我用电子邮件和密码创建了一个firebase auth用户
用户登录
用户决定在其个人资料中添加电话号码
我打电话给verifyPhoneNumber
是为了接收代码,打电话给PhoneAuthProvider.getCredential(...)
并将结果链接到电子邮件和密码。
相反,android会自动检索代码,用户会自动使用电话号码登录,他们的uid会更改(这是一个新用户),并且无法将电话凭据链接回原始电子邮件/密码用户。要执行成功的链接,我需要查看短消息代码,如果自动登录成功,则找不到该代码。
?????
没有利润。
有什么想法吗?我尝试将AuthCredential
的超时设置为0,但自动登录仍然有效。接受失败并将verifyPhoneNumber
凭证链接到电话号码,而不是相反,这不是一个选项,因为它将需要大量复制旧用户记录中的数据到新用户记录中,并在任何地方更改对此uid的所有引用,等等。
最佳答案
verifyPhoneNumber
用PhoneAuthCredential
解决。
不管代码是自动检索的还是即时验证的。PhoneAuthCredential
完成时输出。
该凭证既可用于verifyPhoneNumber
登录,也可通过signInWithCredential
链接到现有用户。
关于android - 如何使用linkWithCredential和verifyPhoneNumber?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54965170/