在firebase登录中出现错误“一个帐户已经存在,具有相同的电子邮件地址但不同的登录凭据”在android中

Pri*_*iya 12 android firebase google-cloud-firestore

这里我尝试使用 Firebase 实现 Google、Facebook 和 Twitter 登录。

我遇到过很多我不清楚的场景。

每个单独的登录都正常工作,我在这里没有发现任何问题。

我的要求是当用户第一次使用 xxxxx@gmail.com 登录某个提供商(Google、Facebook、Twitter)并成功后,用户退出。在第二次登录时,用户使用与其他一些提供相同的 ID xxxxx@gmail.com 而不是以前使用的 ID,那时我们不应该允许登录过程。用户下次需要使用同一提供商登录。

以下是我发现的案例,

  1. 第一次使用 xxxxx@gmail.com 使用谷歌登录时,成功弹出后我注销了。我第二次尝试使用 Facebook 或 Twitter 使用相同的 ID xxxxx@gmail.com 登录,但它抛出错误“一个帐户已存在,具有相同的电子邮件地址但登录凭据不同”

  2. 第一次使用 xxxxx@gmail.com 使用 twitter 或 Facebook 登录时,成功弹出后我注销了。我第二次尝试使用 google 使用相同的 ID xxxxx@gmail.com 登录。它没有显示任何异常。在这里我需要通知用户“xxxxx@gmail.com 与 twitter 或 Facebook 关联,使用相同的提供商登录”

我不知道第二种情况发生了什么。

对于这个 ID xxxxx@gmail,我有 google、Facebook 和 twitter 帐户。

Lij*_*pin 13

看看对你有没有帮助。在 Firebase 控制台中更改此设置

在此处输入图片说明

在此处输入图片说明

  • 我完全不同意所提供的答案。如果在我的应用程序中,我希望如果用户使用谷歌、Facebook 等多个提供商使用相同的电子邮件地址登录......它必须创建一个没有任何问题的帐户。 (20认同)
  • 同意@ShreeramK,Firebase 应该能够合并帐户。我们真的应该避免每个电子邮件地址允许多个帐户! (4认同)