在Firebase中未使用Google身份验证收到电子邮件

时间:2016-06-23 14:55:19

标签: ios swift firebase firebase-authentication google-authentication

我正在使用Firebase为Google身份验证提供的代码,但不知何故,验证成功,但电子邮件未正确导入Firebase。

https://firebase.google.com/docs/auth/ios/google-signin

正如您在下面的屏幕截图中看到的那样,电子邮件是空白的。当我查看调试器时,它显示为零。
我点击允许在身份验证期间查看电子邮件,但我认为仍有一些设置未正确完成。有人可以帮我看看吗?我有兴趣使用该电子邮件为每个用户创建用户名。

enter image description here

func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {
    if let error = error {
        print(error.localizedDescription)
        return
    }

    let authentication = user.authentication
    let credential = FIRGoogleAuthProvider.credentialWithIDToken(authentication.idToken,
                                                                 accessToken: authentication.accessToken)
    FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in
        if error != nil {
            print(error?.localizedDescription)
            return
        }

        print("User logged in with Google...")
        self.performSegueWithIdentifier("ToHome", sender: nil)
    }
}

2 个答案:

答案 0 :(得分:5)

电子邮件未在firebase控制台上显示,因为您允许用户使用相同的电子邮件创建多个帐户。如果您导航到验证 - >登录方法您可以将选项设置为避免使用相同的电子邮件创建多个帐户。在此之后,电子邮件将在创建用户时开始显示。

enter code here

此处不确定,但如果您仍想创建多个帐户并在应用程序端设置用户电子邮件我想您在创建用户时需要将电子邮件存储在firebase数据库中。

答案 1 :(得分:-1)

您可以在列表ProviderData中搜索:

userFirebase.providerData

providerId“ google.com”照常收到电子邮件。

相关问题