简体   繁体   English

Facebook Android SDK无法在注销时清除之前的登录信息

[英]Facebook android sdk not clear previous login at logout

My app has facebook login integration in it, And i found one issue while re-login, When i tried to logout from facebook and after that re-login i am getting previous user auto login in my app but what i need is to login as new user. 我的应用程序具有Facebook登录集成,并且我在重新登录时发现了一个问题,当我尝试从Facebook注销并重新登录后,我在我的应用程序中获得了以前的用户自动登录,但是我需要以新用户。 Don't Know what's Going wrong 不知道出了什么问题

My Logout code is 我的注销代码是

val parameters = Bundle()

    val request = GraphRequest(
            AccessToken.getCurrentAccessToken(),
            "/me/permissions/",
            parameters,
            HttpMethod.DELETE,
            GraphRequest.Callback {
                // Insert your code here
                LoginManager.getInstance().logOut()
            })

    request.executeAsync()

You need to initialize the FacebookSdk in the logout activity before calling logOut(). 您需要在注销活动中初始化FacebookSdk,然后再调用logOut()。

LoginManager.getInstance().logOut(); ,will work ,将工作

but dont forgot to put FacebookSdk.sdkInitialize(getApplicationContext()); 但是不要忘了把 FacebookSdk.sdkInitialize(getApplicationContext()); inside your LogoutActivity onCreate 在您的LogoutActivity onCreate中

对于从Facebook 注销仅需要使用:

LoginManager.getInstance().logOut();

In facebook SDK,if you want to completely de-couple, make sure you also remove the app from the user's facebook account. 在facebook SDK中,如果要完全解除耦合,请确保还从用户的facebook帐户中删除该应用程序。 This method disconnects the user completely: 此方法使用户完全断开连接:

public void logoutFromFacebook() {

    if (AccessToken.getCurrentAccessToken() == null) {
        return; // user already logged out
    }

    new GraphRequest(AccessToken.getCurrentAccessToken(), "/me/permissions/", null, HttpMethod.DELETE, new GraphRequest
            .Callback() {
        @Override
        public void onCompleted(GraphResponse graphResponse) {    
            LoginManager.getInstance().logOut();

        }
    }).executeAsync();
}

also use this FacebookSdk.sdkInitialize(getApplicationContext()); 也使用此FacebookSdk.sdkInitialize(getApplicationContext()); to initialize the facebook sdk. 初始化facebook sdk。

Hope it will help you!! 希望对你有帮助!!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM