Firebase使用电子邮件和Google帐户进行身份验证

时间:2017-05-25 19:03:57

标签: android firebase firebase-authentication firebaseui google-account

我正在使用Firebase用户界面在我的Android应用上实施用户身份验证,但我遇到了问题。 这是场景:

  1. 用户使用其电子邮件地址创建帐户
  2. 用户退出该帐户
  3. 同一位用户尝试使用他们的Google帐户登录,该帐户恰好与他们用于创建帐户的电子邮件地址相同,是第1步
  4. 用户成功登录并可以查看帐户中的数据(与步骤1中的帐户相同)
  5. 用户退出
  6. 用户尝试使用电子邮件地址
  7. 登录
  8. 用户获取unknown error,无法使用电子邮件地址登录。使用Google帐户一切正常,但使用电子邮件登录不再有效。
  9. 我尝试使用网络客户端查找实际错误,尝试使用电子邮件地址登录时出现以下错误:

    {
     "code":"auth/wrong-password",
     "message":"The password is invalid or the user does not have a password."
    }
    

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为当用户第二次使用他的Google帐户登录时,它会覆盖Firebase帐户中的数据。这意味着Google凭据仍然是默认凭据。出现这种情况的原因很明显,Google帐户是值得信赖的来源,这就是我们出现这种行为的原因。

要解决您的问题,您需要根据该电子邮件地址将这两个帐户链接在一个帐户中。