2013-10-28 52 views
1

我在我的應用中完成了Google +集成,它的工作原理完美無缺。但我注意到偶爾會在註銷期間收到EXC_BAD_ACCESS錯誤。這是我的註銷功能Google+集成iOS - 退出時出現EXC_BAD_ACCESS錯誤

-(void) logout 
{ 
    [[GPPSignIn sharedInstance]signOut]; 
    [[GPPSignIn sharedInstance] disconnect]; // EXC_BAD_ACCESS Error occurs in this line 
} 

我不總是得到這個錯誤,我認爲它可能不得不做一些與會話有關的事情。我試過尋找它,但到目前爲止還沒有發現任何分辨率。這個錯誤很少發生,我不知道這是什麼時候發生的。當我在這個錯誤後運行應用程序時,它工作正常,沒有問題。但它仍然是一個錯誤,我想知道是否有其他人有相同的經歷,並找到了解決辦法。

回答

2

這個問題似乎是由於調用signOutdisconnect方法。斷開方法也執行註銷。該文檔說:「令牌需要斷開連接,所以如果要斷開連接,請不要調用signOut。」

如果你希望只簽出用戶,只需撥打「signOut」的方法,例如:

- (void)signOut 
    { 
    [[GPPSignIn sharedInstance] signOut]; 
} 

如果你要斷開的用戶(撤銷代表用戶的應用的API訪問),該方法還執行登出:

- (void)disconnect 
    { 
     [[GPPSignIn sharedInstance] disconnect]; 
    } 

你也應該落實清理用戶的詳細信息並按照Google+'s policies around disconnectsdidDisconnectWithError:(NSError *)error方法。

閱讀​​瞭解更多信息。

+0

謝謝,這似乎比我做的更明智。 – Gamerlegend