【问题标题】:How to sign out from Firebase Auth when using Google Auth, in Android?在 Android 中使用 Google 身份验证时如何从 Firebase 身份验证中退出?
【发布时间】:2021-05-05 19:58:00
【问题描述】:

使用 Google 身份验证时退出的正确方法是什么?我正在按照下面的代码进行操作,但我也尝试只使用mFirebaseAuth.signOut(),它似乎工作正常,所以我真的需要从GoogleSignInClient 调用注销方法吗?

mFirebaseAuth.signOut();
    GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                    .requestIdToken(getString(R.string.default_web_client_id))
                    .requestEmail()
                    .build();
    
    GoogleSignInClient mGoogleSignInClient = GoogleSignIn.getClient(getBaseContext(), gso);
    mGoogleSignInClient.signOut();

【问题讨论】:

  • 是的,您应该同时退出 Firebase 和 Google,否则,您将使用其中一个或另一个保持登录状态。

标签: android firebase firebase-authentication


【解决方案1】:

您认为FirebaseAuth.signOut() 就足够了是正确的。这是因为 firebase 应用程序本身正在管理所有 firebase 服务使用的自己的用户对象。这样做还会将 currentUser 重置为 null。

唯一的问题是,如果您的应用尝试从 Google 客户端自动登录用户,并且在某些情况下,退出该服务可能是可取的,但它们与 Firebase 及其服务无关。

【讨论】:

  • 所以最好把这两种注销方法都留在代码中,对吧?
  • 一般来说,这很难说。但为了让生活更轻松,是的。
猜你喜欢
  • 2020-12-25
  • 2017-03-11
  • 1970-01-01
  • 2021-06-06
  • 2016-09-26
  • 1970-01-01
  • 2017-11-08
  • 2017-11-27
  • 1970-01-01
相关资源
最近更新 更多