离开Android Quickstart Firebase Auth sample,在成功登录Google后,您是否可以在onActivityResult
中执行以下操作?
@Override public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == DialogSignInFragment.RC_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
if (result.isSuccess()) {
//-------- Is the following call allowed? --------
Auth.GoogleSignInApi.signOut(mGoogleApiClient);
GoogleSignInAccount account = result.getSignInAccount();
firebaseAuthWithGoogleSignInStepTwo(account);
} else {
Log.e(TAG, "GOOGLE SIGN IN FAILED: " + result.toString());
}
}
}
据我所知,使用Google帐户向Firebase进行身份验证需要两个步骤。
首先您登录Google帐户以检索令牌,然后使用该令牌获取凭据,以便您可以执行FirebaseAuth.signInWithCredential()
调用以最终登录firebase。
是否有必要让任何进一步的Firebase操作保持与Google登录流程的登录?我会说不,因为你也不必继续登录Facebook让Firebase继续工作,这个假设是否正确?
这样做是否有任何负面影响?我想在成功登录后退出,以保持代码清洁。仅供参考,即使在Auth.GoogleSignInApi.signOut()
调用之后,以下代码也会成功登录Firebase。
有哪些限制,即退出后这些凭证有效期多长?足够长的时间能够与他们一起登录Firebase,还是会在Googles服务器上启动竞争条件?