Sie können zulassen, dass sich Ihre Nutzer mit ihren Google-Konten bei Firebase authentifizieren können, indem Sie um Google Log-in in deine App zu integrieren.
Hinweis
Vor der Verwendung Firebase Authentication, sind folgende Schritte erforderlich:
Registrieren Sie Ihr Unity-Projekt und konfigurieren Sie es für die Verwendung von Firebase.
Wenn Ihr Unity-Projekt bereits Firebase verwendet, registriert und für Firebase konfiguriert.
Wenn Sie kein Unity-Projekt haben, können Sie Beispiel-App.
Fügen Sie Ihrem Unity-Projekt das Firebase Unity SDK (insbesondere
FirebaseAuth.unitypackage
) hinzu.
Beachten Sie, dass das Hinzufügen von Firebase zu Ihrem Unity-Projekt sowohl Aufgaben im Firebase-Konsole und im geöffneten Unity-Projekt (Beispiel: Sie laden Firebase-Konfigurationsdateien aus der Console herunter und in Ihr Unity-Projekt importieren.
Auf die Klasse Firebase.Auth.FirebaseAuth
zugreifen
Die Klasse FirebaseAuth
ist das Gateway für alle API-Aufrufe.
Sie kann über FirebaseAuth.DefaultInstance aufgerufen werden.
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
Mit Firebase authentifizieren
- Folgen Sie der Anleitung für Android und iOS+. , um ein ID-Token für die Google-Anmeldung zu erhalten.
- Nachdem sich ein Nutzer erfolgreich angemeldet hat, tauschen Sie das Zugriffstoken gegen Firebase-Anmeldedaten ein und authentifizieren Sie sich mit Firebase:
Firebase.Auth.Credential credential = Firebase.Auth.GoogleAuthProvider.GetCredential(googleIdToken, googleAccessToken); auth.SignInAndRetrieveDataWithCredentialAsync(credential).ContinueWith(task => { if (task.IsCanceled) { Debug.LogError("SignInAndRetrieveDataWithCredentialAsync was canceled."); return; } if (task.IsFaulted) { Debug.LogError("SignInAndRetrieveDataWithCredentialAsync encountered an error: " + task.Exception); return; } Firebase.Auth.AuthResult result = task.Result; Debug.LogFormat("User signed in successfully: {0} ({1})", result.User.DisplayName, result.User.UserId); });
Nächste Schritte
Nachdem sich ein Nutzer zum ersten Mal angemeldet hat, wird ein neues Nutzerkonto erstellt und mit den Anmeldedaten verknüpft, d. h. mit dem Nutzernamen und Passwort, der Telefonnummer oder den Informationen zum Authentifizierungsanbieter, mit denen sich der Nutzer angemeldet hat. Diese neue -Konto wird als Teil Ihres Firebase-Projekts gespeichert und kann verwendet werden, um in jeder App in Ihrem Projekt einen Nutzer erreichen, unabhängig davon, wie er sich anmeldet.
-
Die grundlegenden Profilinformationen der Nutzer finden Sie in Ihren Apps über die
Firebase.Auth.FirebaseUser
-Objekt:Firebase.Auth.FirebaseUser user = auth.CurrentUser; if (user != null) { string name = user.DisplayName; string email = user.Email; System.Uri photo_url = user.PhotoUrl; // The user's Id, unique to the Firebase project. // Do NOT use this value to authenticate with your backend server, if you // have one; use User.TokenAsync() instead. string uid = user.UserId; }
In Firebase Realtime Database und Cloud Storage Sicherheitsregeln können Sie die eindeutige Nutzer-ID des angemeldeten Nutzers aus der Variablen
auth
abrufen, und steuern, auf welche Daten ein Nutzer zugreifen kann.
Sie können Nutzern erlauben, sich mit Mehrfachauthentifizierung in Ihrer App anzumelden indem Sie die Anmeldedaten des Authentifizierungsanbieters mit einem eines bestehenden Nutzerkontos.
Wenn Sie einen Nutzer abmelden möchten, rufen Sie SignOut()
auf:
auth.SignOut();