Я разрабатывает игру для Android, который имеет Facebook логин и я столкнулся следующее странное поведение при попытке выхода из системы:
если пользователь нажмет кнопку выхода из системы Facebook, закрывающих приложение, а затем снова открывается, пользователь все еще регистрируется (= токен доступа все еще действителен). В качестве теста я проверил токен доступа после выхода из системы, и он является нулевым, как и должно быть, но если я закрою и снова открою приложение, то токен доступа снова не будет нулевым.
Кажется, что Facebook кэширует токен доступа и берет его из кеша даже после выхода из системы.
Я пробовал использовать собственную кнопку Facebook, а также LoginManager.getInstance.logout(); Я инициализировал sdk Facebook в верхней части onCreate, прежде чем setContent(), и я выполнил процедуру в документах на Facebook, но тот же результат.
Я использую Facebook sdk 4.6.0, и я столкнулся с этой проблемой на Android 4.2.2 и 4.4.2.
EDIT
Вот код:
- кнопка Facebook:
Facebook выход из системы не работает Android [Facebook SDK 4]
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_settings);
btnFacebookLogout.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException e) {
}
});
}
- нормальная кнопка:
btnNormalLogout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LoginManager.getInstance().logOut();
}
});
Любой sugg estion?
Заранее спасибо
Включите ваш код, чтобы мы могли помочь? – Shawn
Да, извините. Я добавил код в редактирование. Спасибо –
Кто-нибудь может помочь? –