2014-03-03 272 views
2

我有一個問題,用FacebookSDK(3.7)從Facebook註銷。我已經嘗試過很多的可能性,但沒有一個似乎工作, 當我嘗試:Facebook的Android SDK註銷不起作用

fb.logout(ScoreActivity.this); 

fb.logout(ScoreActivity.this.getApplicationContext()); 

或類似的東西,我得到一個IllegalArgumentException(但不知道爲什麼。 ) 只是一個簡短的解釋:「fb」是類型Facebook的一個對象,而「ScoreActivity」是活動,在那裏註銷應該發生..只是表單信息:登錄正在工作..

其他我試過的方法是f ollowing: 我調用下面的函數:

logoutfromfb(ScoreActivity.this.getApplicationContext()); 

這是這樣定義的:

public static void logoutfromfb(Context context) { 
    Session session = Session.getActiveSession(); 
    if (session != null) { 
     if (!session.isClosed()) { 
      session.closeAndClearTokenInformation(); 
      //clear your preferences if saved 
     } 
    } else { 
     session = new Session(context); 
     Session.setActiveSession(session); 
     session.closeAndClearTokenInformation(); 
      //clear your preferences if saved 
    } 
} 

應實際工作,我不甚至得到一個錯誤,看在我的logcat的,但它不工作,我可以按下按鈕多久我想要的,但沒有任何反應.... 我真的希望有人可以幫助我...

如果您需要更多信息,請讓我知道。

回答

0

我有同樣的問題,似乎註銷的作品,但既然你有官方的Facebook應用程序仍然登錄它將再次默默驗證。我正在考慮創建一個「isLogged」變量並存儲它,以便當某人註銷並重新啓動應用程序時,它甚至不會驗證用戶是否繞過了Facebook會話驗證。

0
fb.getSession().closeAndClearTokenInformation(); 

你可以使用這個。它爲我工作。