背景:如何正确链接Firebase中的不同身份验证帐户IOS
我正在开发一个使用Firebase作为后端的IOS应用程序。 有3个认证: 1:密码和电子邮件 2:脸谱 3:谷歌
我已经检查了option选项 “每个帐户一个电子邮件”。
的情况是:
说,如果我先登录与验证提供者之一,后来,注销,并希望与任何其他两种验证供应商注册。如果当前提供商的关联电子邮件与以前相同,我将收到“电子邮件地址已被使用”错误。在这种情况下,我想将当前的Auth帐户与以前的帐户关联起来。
我知道我需要调用linkWithCredential:completion:
方法来链接帐户。但我首先需要登录以前的帐户,但我怎么能告诉哪个帐户登录?例如,如果我通过Facebook登录并收到“正在使用的电子邮件”错误,那么我现在应该如何知道是否应该通过Google或电子邮件/密码登录?
一个有趣的事情是,如果我使用Facebook或电子邮件/密码先登录,然后用Google登录,firebase将自动处理链接,但默认行为是用Google覆盖以前的Auth提供商并保留UID ...
我发现了一个有用的帖子How to manage users' different authentication in firebase
但它只能处理简单的情况下验证只有两个。