Выход из Facebook Android SDK не работает

У меня проблема с выходом из Facebook с помощью FacebookSDK (3.7). Я уже пробовал много возможностей, но ни одна из них не работает, когда я пытаюсь:

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, но он не работает, я могу нажимать кнопку сколько угодно раз, но ничего не происходит... Я очень надеюсь, что кто-нибудь может мне помочь...

Если вам нужна дополнительная информация, просто дайте мне знать.


person nameless    schedule 03.03.2014    source источник


Ответы (2)


У меня та же проблема, кажется, что выход из системы работает, но, поскольку у вас все еще есть официальное приложение facebook, оно снова будет аутентифицироваться молча. Я думаю о создании переменной «isLogged» и хранении ее, чтобы, когда кто-то выходит из системы и перезапускает приложение, оно даже не проверяло, зарегистрирован ли пользователь в обход проверки сеанса facebook.

person Diogo Garcia    schedule 22.12.2014

fb.getSession().closeAndClearTokenInformation(); 

вы можете использовать это. это сработало для меня.

person Edip Ertürk    schedule 11.02.2015