我的firebase身份验证设置为防止同一封电子邮件的多个帐户,但它似乎并没有这样做。见下图:
以前有人遇到过这个问题吗?
**编辑:以下是重播此错误的详细信息:
问题几乎归结为updateEmail()
函数。
当用户注册我的应用时,我想确保为用户提供电子邮件,以便更轻松地搜索该用户。问题是Facebook身份验证并不能确保用户收到电子邮件,原因如下:
因此,我的 登录代码有点复杂,但这里是我的代码的链接,带有注释来解释所有内容(请注意,我使用自定义Facebook / Google按钮,这就是我必须手动执行某些操作的原因):{{3} }
如果您查看func getFBUserData()
并查看上面的评论,则错误发生在案例1的第一个要点中:
// 1) user's facebook does have email. This is common case
// - in this case, sign them into Firebase
// - could be that they previously didn't have email but now they do, so update Firebase user's email
这是边缘情况,由于某种原因,用户首先不允许电子邮件权限,然后改变主意并允许它们。有趣的是,代码仍会抛出.errorCodeEmailAlreadyInUse错误,但该帐户将显示在Firebase控制台中,如SO问题中的图片所示,以及我刚刚执行的操作:Login Gist