Я пытаюсь использовать Facebook SDK 3.0 для извлечения токена доступа при нажатии кнопки в приложении для Android. У меня есть общая кнопка в моей деятельности, которая выполняет следующие действия:
Button facebook = (Button)findViewById(R.id.facebookLoginButton);
facebook.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Session session = new Session(getApplicationContext());
Session.setActiveSession(session);
session.openForRead(new Session.OpenRequest(SignInActivity.this).setCallback(statusCallback));
}
});
И затем обратный вызов:
private class FacebookSessionStatusCallback implements Session.StatusCallback {
@Override
public void call(Session session, SessionState state, Exception exception) {
String s=session.getAccessToken();
}
}
Щелчок по кнопке подскажет мне, как мне получить доступ к моему профилю, как ожидалось, но этот обратный вызов только один раз вызывается один раз с SessionState как "ОТКРЫТИЕ". После этого состояние не изменится.
Что мне здесь не хватает? Моя конечная цель состоит в том, чтобы просто получить токен доступа один раз, и мне действительно не нужно останавливать сеанс или использовать его для входа в мое приложение.