Nach der Anmeldung in über Google Kombinieren und Protokollierung der von dem FirebaseAuth Benutzer gezogen Daten, das ist, wie Firebase Sie ein Benutzerkontoinformation ziehen hat:FirebaseAuth Userinfo von ProviderData in einen umfassenden Benutzer
die Profilinformationen zu erhalten die von den Anmeldungsanbietern abgerufen werden, die mit einem Benutzer verknüpft sind, verwenden Sie die Methode "getProviderData".
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
for (UserInfo profile : user.getProviderData()) {
// Id of the provider (ex: google.com)
String providerId = profile.getProviderId();
// UID specific to the provider
String uid = profile.getUid();
// Name, email address, and profile photo Url
String name = profile.getDisplayName();
String email = profile.getEmail();
Uri photoUrl = profile.getPhotoUrl();
};
}
Wenn ich dich anmelden, um Informationen von jedem profile
zog ich die folgenden paar unvollständige Datensätze erhalten:
06-08 12:48:12.851 14400-14400/com.example.app D/MainActivity: providerId: firebase, uid: 1***************2, name: null, email: d**********[email protected], url: null
06-08 12:48:12.851 14400-14400/com.example.app D/MainActivity: providerId: google.com, uid: 1************5, name: D*******y, email: null, url: https://lh4.googleusercontent.com/.../photo.jpg
Gibt es eine Standardmittel von Benutzerinformationen kombiniert und als zugänglicher Speicherung Datensatz? FirebaseAuth (zumindest in diesem Beispiel) scheint nicht die sauberste Möglichkeit zu sein, Benutzerinformationen zur Laufzeit abzurufen.