Firebase:与多个提供商建立链接

时间:2017-02-26 11:10:03

标签: android firebase firebase-authentication

App有2个社交登录:Facebook和Google

考虑以下流程:

  • app启动,用户获得匿名uid
  • 用户通过Facebook登录,电子邮件地址为a_email@gmail.com
  • 用户注销并获得新的匿名uid
  • 用户尝试通过Google登录a_email@gmail.com
  • FirebaseAuthUserCollisionException:电子邮件地址已被其他帐户使用。 Firebase抛出异常

如何解决此异常?

目前用户尚未通过Facebook登录,因此我无法将其与新的Google凭据相关联。我无法通过Google登录,因为电子邮件已在使用中。

唯一可行的解​​决方案是通过Facebook登录用户,然后将Facebook链接到谷歌,但这对用户来说会让人感到困惑 - 他会看到谷歌登录流程,然后,突然,将切换到Facebook,然后回到谷歌。

或者,我必须抛出错误并向用户解释,即使电子邮件是相同的,他也必须通过Facebook登录。我必须提供新的用户界面,允许用户在登录后将Facebook链接到谷歌(目前我还没有投入时间,希望它不必要)

0 个答案:

没有答案