Tiêu đề nói lên tất cả. Tôi đang sử dụng một nút tùy chỉnh để lấy thông tin facebook của người dùng (cho mục đích "đăng ký"). Tuy nhiên, tôi không muốn ứng dụng ghi nhớ người dùng đã đăng ký cuối cùng, cả người hiện đang đăng nhập thông qua ứng dụng gốc Facebook. Tôi muốn hoạt động đăng nhập Facebook bật lên mỗi lần. Đó là lý do tại sao tôi muốn đăng xuất bất kỳ người dùng trước nào theo lập trình.
Làm thế nào tôi có thể làm điều đó? Đây là cách tôi thực hiện đăng nhập:
private void signInWithFacebook() {
SessionTracker sessionTracker = new SessionTracker(getBaseContext(), new StatusCallback()
{
@Override
public void call(Session session, SessionState state, Exception exception) {
}
}, null, false);
String applicationId = Utility.getMetadataApplicationId(getBaseContext());
mCurrentSession = sessionTracker.getSession();
if (mCurrentSession == null || mCurrentSession.getState().isClosed()) {
sessionTracker.setSession(null);
Session session = new Session.Builder(getBaseContext()).setApplicationId(applicationId).build();
Session.setActiveSession(session);
mCurrentSession = session;
}
if (!mCurrentSession.isOpened()) {
Session.OpenRequest openRequest = null;
openRequest = new Session.OpenRequest(RegisterActivity.this);
if (openRequest != null) {
openRequest.setPermissions(null);
openRequest.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
mCurrentSession.openForRead(openRequest);
}
}else {
Request.executeMeRequestAsync(mCurrentSession, new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
fillProfileWithFacebook( user );
}
});
}
}
Tốt nhất, tôi sẽ thực hiện cuộc gọi ở đầu phương thức này để đăng xuất bất kỳ người dùng nào trước đó.