API Facebook висит на «Открытие» во время openActiveSession

Я могу войти в систему в первый раз. И у меня есть вариант, где пользователь может отключить Facebook в приложении Android. Когда это выбрано, статус Facebook переходит в состояние ЗАКРЫТО. Когда я снова использую эту опцию, чтобы снова войти в систему, API зависает при открытии в функции обратного вызова.

По примерам янашел первый вызов использует

session.openForRead(new Session.OpenRequest(activity).setCallback(statusCallback));

а второй использует

Session.openActiveSession(activity, true, statusCallback);

Функция обратного вызова выглядит следующим образом:

private static class SessionStatusCallback implements Session.StatusCallback {
    // callback when session changes state
    @Override
    public void call(Session session, SessionState state, Exception exception) {
        if (session.isOpened()) {
            // make request to the /me API
            Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
                // callback after Graph API response with user object
                @Override
                public void onCompleted(GraphUser user, Response response) {
                    if (user != null) {
                        GlobalVars.setUser(user.getName());
                        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalVars.getContext());
                        Editor editor = prefs.edit();
                        editor.putBoolean("facebook", true);
                        editor.commit();
                        System.out.println("facebook logged in");
                    }
                }
            });
        }
        System.out.println("facebook session state callback " + session.getState().toString());
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос