Facebook android sdk 在注销时无法清除之前的登录

Facebook android sdk not clear previous login at logout

我的应用程序集成了 facebook 登录,我在重新登录时发现了一个问题,当我尝试从 facebook 注销并在重新登录后,我的应用程序中出现了以前的用户自动登录,但我需要以新用户身份登录。不知道出了什么问题

我的登出密码是

val parameters = Bundle()

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

    request.executeAsync()

调用logOut()前需要在注销activity初始化FacebookSdk

LoginManager.getInstance().logOut();,会起作用

但不要忘记将 FacebookSdk.sdkInitialize(getApplicationContext()); 放入你的 LogoutActivity onCreate

Facebook注销只需要使用:

LoginManager.getInstance().logOut();

在 facebook SDK 中,如果您想完全 de-couple,请确保您也从用户的 facebook 帐户中删除该应用程序。此方法完全断开用户连接:

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();
}

也用这个FacebookSdk.sdkInitialize(getApplicationContext());来初始化facebook sdk。

希望对您有所帮助!!