2

Ich verwende den von Firebase für Google-Authentifizierung bereitgestellten Code und irgendwie war die Authentifizierung erfolgreich, aber die E-Mail wurde nicht korrekt in Firebase importiert.Keine E-Mail mit Google-Authentifizierung in Firebase

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

Wie Sie in der Abbildung unten sehen können, ist die E-Mail leer. Wenn ich den Debugger anschaue, zeigt er Null an.
Ich habe geklickt erlauben E-Mail-Anzeige während der Authentifizierung, aber ich denke, es gibt noch einige Einstellungen, die nicht richtig gemacht wurde. Könnte mir jemand helfen, einen Blick darauf zu werfen? Ich möchte die E-Mail verwenden, um den Nutzernamen für jeden Nutzer zu erstellen.

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) 
    } 
} 
+1

Möchten Sie mehrere Konten mit derselben E-Mail haben? – adolfosrs

+1

Ich habe nur mehrere Konten deaktiviert. Jetzt bekomme ich die E-Mail ... thx ... –

+0

Es klingt wie zwischen euch beiden, Sie haben eine Antwort. Kann einer von euch es aufschreiben? –

Antwort

3

Die E-Mail nicht auf Feuerbasis Konsole zeigt, weil Sie Benutzer erlauben mehrere Konten mit derselben E-Mail zu erstellen. Wenn Sie zu Auth -> Anmeldemethode navigieren, können Sie die Option auf setzen. Vermeiden Sie die Erstellung mehrerer Konten mit derselben E-Mail-Adresse. Danach erscheinen die E-Mails beim Erstellen des Benutzers.

enter code here

Nicht sicher hier aber, wenn Sie noch mehrere Konten erstellen möchten und haben die Benutzer E-Mail auf der Anwendungsseite Ich denke, dass Sie die E-Mail auf Firebase-Datenbank speichern, müssen beim Anlegen des Benutzers .

+0

Ich hatte "es wurde vermieden mehrere zu erstellen ...." ausgewählt und ein Benutzer authentifizierte sich noch via Facebook ohne eine Email. Irgendwelche anderen Ideen, warum das passieren würde? – ttorbik