Android Firebase OAuth签署了奇怪的行为

时间:2017-12-08 21:04:44

标签: android login firebase-authentication facebook-sdk-4.x

当我第一次使用Google帐户登录时,请使用Facebook帐户登录Firbase返回" ERROR_ACCOUNT_EXISTS_WITH_DIFFERENT_CREDENTIAL"  这是正确的,因为我从firebase控制台禁用了签名多凭据选项。

首次使用Facebook帐户登录时会出现问题。 提供者是正确的,UserInfo显示Facebook用户帐户信息。但电子邮件未经过验证。

FirebaseUser user = getFirebaseUser();
user.isEmailVerified() // is false

当我登录Google帐户时会出现非常奇怪的行为。 第一个firebase没有返回相同的凭证异常。因为我已经通过facebook帐户登录。并且Firebase删除了facebook帐户,但我已经通过facebook帐户登录了。 从user.getProviderData()移除的Facbook用户信息 我检查了Firebase控制台。显示我通过Facebook登录

1 个答案:

答案 0 :(得分:1)

查看此帖子,了解为何未验证Facebook电子邮件:Firebase Facebook auth: email verified always false

如果您要考虑验证Facebook电子邮件,可以使用Admin SDK admin.auth().updateUser(uid, {emailVerified: true})将Facebook电子邮件设置为已验证。点击此处了解详情:https://firebase.google.com/docs/auth/admin/manage-users#update_a_user

查看此帖子,了解Google登录后Facebook帐户取消关联的原因:Authentication using Facebook at first and then Google causes an error in Firebase for Android