Сессия.openActiveSession только звонки открытие в Facebook Android SDK
Я Facebook пытаюсь войти в систему с помощью Facebook Android SDK, однако статус обратного вызова срабатывает только один раз с состоянием сеанса OPENING
. После этого появляется действие входа в Facebook без содержимого (я знаю, что это действие, так как оно имеет заголовок, который я установил для title_facebook_login
в строках.xml) на краткий миг и исчезает в течение секунды. Никакой другой обратный вызов не срабатывает, никаких исключений, никаких сбоев. Он просто ждет вечно в моем первоначальном действии. Вот мой код:
Session.openActiveSession(parent, true, new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
if(state == SessionState.OPENED){
String accessToken = session.getAccessToken();
}
}
});
Почему бы и нет ответный огонь для SessionState.OPENED
(или созданный, или даже закрытый), но только открывающийся?
1 ответ:
Вам нужно вызвать onActivityResult
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); uiHelper.onActivityResult(requestCode, resultCode, data); }
Итак, когда вход выполнен . Он приходит к той же активности и вызывает состояние обратного вызова с состояние сеанса открыто
Инициализировать UiLifecycleHelper
private UiLifecycleHelper uiHelper;
В oncreate нужно вызвать перед setContentView
uiHelper = new UiLifecycleHelper(this, statusCallback); uiHelper.onCreate(savedInstanceState);
И нужно поддерживать сеанс в
@Override protected void onResume() { super.onResume(); uiHelper.onResume(); } @Override protected void onPause() { super.onPause(); uiHelper.onPause(); } @Override protected void onDestroy() { super.onDestroy(); uiHelper.onDestroy(); }