Facebook Android SDK注销不起作用

时间:2014-03-03 18:03:16

标签: java facebook session logout android-facebook

我遇到问题,用FacebookSDK(3.7)从Facebook退出。我已经尝试了很多可能性,但似乎没有工作, 当我尝试:

fb.logout(ScoreActivity.this);

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

或类似的东西,我得到一个IllegalArgumentException(但不知道为什么......) 只是一个简短的解释:" fb"是Facebook类型的对象," ScoreActivity"是活动,注销应该发生..只是表单信息:登录正在运行..

我尝试的另一种方法如下: 我调用以下函数:

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但它不工作,我可以按下按钮我想要的频率,但没有任何反应.... 我真的希望有人可以帮助我...

如果您需要更多信息,请告诉我。

2 个答案:

答案 0 :(得分:0)

我有同样的问题,似乎注销工作,但由于你有正式的Facebook应用程序仍然登录它将再次静默验证。我正在考虑创建一个“isLogged”var并将其存储,以便当有人注销并重新启动应用程序时,它甚至不会验证用户是否在绕过facebook会话验证时被记录。

答案 1 :(得分:0)

fb.getSession().closeAndClearTokenInformation(); 

你可以用它。它对我有用。