背景:如何正確鏈接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
但它只能處理簡單的情況下驗證只有兩個。