繁体   English   中英

清除应用数据后如何注销Google?

[英]How to log out of Google after app data has been cleared?

因此,我在应用程序中使用FirebaseUI Auth来提供Google和Facebook的登录信息。 我已经设置了标准的SharedPreferences来检查是否清除了应用程序数据,如果已清除,请注销Firebase和提供程序(按照文档中的说明)。 登出Facebook非常简单:

LoginManager.getInstance().logOut();

现在,对于Google来说,方法是:-

Auth.GoogleSignInApi.signOut(mGoogleApiClient);

这段代码的问题是我不知道从哪里获取mGoogleApiClientGoogleSignInClient对象。 由于数据已清除,因此在创建构建器时我无法使用SharedPreferences保存数据。

任何帮助表示赞赏,谢谢!

试试下面的代码

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                    .requestIdToken(getResources().getString(R.string.google_client_id))
                    .requestEmail()
                    .build();
            mGoogleSignInClient = GoogleSignIn.getClient(this, gso);

Intent signInIntent = mGoogleSignInClient.getSignInIntent();
        startActivityForResult(signInIntent, RC_SIGN_IN);

对于注销,请使用以下代码

mGoogleSignInClient.signOut();
if (googleApiClient.isConnected())
   Auth.GoogleSignInApi.signOut(googleApiClient);

 //where googleApiClient is object of GoogleApiClient.

只需在您要注销的应用程序中添加此行即可。

FirebaseAuth.getInstance().signOut();

暂无
暂无

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

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