- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
好的,这是我得到的错误:
1- 当应用以 phone1 启动时,用户匿名登录。 Uid:ABC ( link1 )
2- phone1 用户决定使用 Google Sign-In 登录。 User 已经有一个 Uid:ABC,这样 User 就会从匿名帐户转换为使用 google 登录的永久帐户。 ( link2 )
3- 使用 phone2,应用程序首次启动并匿名登录。 Uid:ZYX ( link1 )
4- 对于 phone2,用户希望使用相同的谷歌帐户登录。所以此时使用 linkWithCredential 会导致“ERROR_CREDENTIAL_ALREADY_IN_USE”。 ( link2 )
那么这个问题的正确解决方案是什么?
最佳答案
您正在尝试链接两个具有相同授权凭据的 UID,即使用相同的 Google 帐户。这本身就是一个主要的安全漏洞,并且永远不应该在生产应用程序中完成。
根据firebase官方文档
ERROR_CREDENTIAL_ALREADY_IN_USE when trying to link a user with an AuthCredential corresponding to another account already in use
您应该尝试简单地登录,它会起作用。您的当前操作相当于注册。
请引用these正确实现谷歌登录的文档。为了使您的上述程序正常工作。 您首先必须删除以前的用户,以便链接到 gmail 帐户的旧 UID 被删除。
如果此信息对您有帮助,请告诉我。
关于android - Firebase 如何在 android 中处理 linkWithCredential "ERROR_CREDENTIAL_ALREADY_IN_USE",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39810626/
我找到了这个 documentation这解释了如何将匿名用户与新注册用户联系起来,但我不明白它是如何工作的。 从解释中还发现here ,我得到了如下大图(如有错误请指正): 匿名用户登录:得到 us
我应该如何将现有用户帐户与不同提供商但同一电子邮件地址关联起来?例如 Google 和 Facebook。 public void handleFacebookAccessToken(final Ac
我使用电子邮件和密码创建了一个 Firebase Auth 用户 用户登录 用户决定在他们的个人资料中添加电话号码 我调用 verifyPhoneNumber 以接收代码,调用 PhoneAuthPr
我正在尝试为拥有公司电子邮件的用户设置自定义声明。当我使用 .onCreate() 触发器时,一切正常,但由于我匿名登录用户,我不知道如何在正确的时间触发此功能(在注册时,当电子邮件可用时)。 这是我
好的,这是我得到的错误: 1- 当应用以 phone1 启动时,用户匿名登录。 Uid:ABC ( link1 ) 2- phone1 用户决定使用 Google Sign-In 登录。 User 已
我是一名优秀的程序员,十分优秀!