Firebase setDisplayName de l'utilisateur lors de la création de l'utilisateur Android
Lors de la création d'un utilisateur, je veux être en mesure de définir son/son nom d'affichage. Comment puis-je faire dans Android? Voici un exemple de ce que je veux réaliser:
mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
FirebaseUser.getCurrentUser().setDisplayName(mName); //I want to do this
}
});
Assumer toutes les variables ont été déclarés et/ou initialisé correctement.
- Il est recommandé de créer un MCVE avant de poster un problème.
- Je vais le faire
Vous devez vous connecter pour publier un commentaire.
Alternativement, vous pouvez définir l'utilisateur Firebase nom d'affichage par écrit les trois lignes de code suivantes:
Ce faisant, l'original de votre code devrait ressembler à ceci:
Ce que ce n'est que lorsque le compte d'utilisateur a été créé avec succès en utilisant l'Email et le Mot de passe d'authentification, il va de connexion de l'utilisateur.
À ce stade, vous pouvez obtenir le courant de Firebase objet Utilisateur et définissez sa propriété de nom d'affichage de quelque chaîne que vous souhaitez.
C'est très utile pour tester le profil de l'utilisateur nom de la Vérification des e-Mails.
Note: Un Firebase objet Utilisateur dispose d'un ensemble fixe de propriétés de base—un IDENTIFIANT unique, une adresse e-mail principale, un nom et une URL de la photo—stockées dans le projet de l'utilisateur de base de données, qui peut être mise à jour par l'utilisateur. Vous ne pouvez pas ajouter d'autres propriétés de la Firebase objet Utilisateur directement; au lieu de cela, vous pouvez stocker les propriétés supplémentaires dans votre Firebase en temps réel de la Base de données.
(Firebase Utilisateur Propriétés De L'Objet Doc)
J'ai trouvé la réponse dans le Firebase docs. Je vais citer ici: "Si la connexion a réussi, le AuthStateListener exécute le onAuthStateChanged de rappel. Dans le rappel, vous pouvez utiliser le getCurrentUser méthode pour obtenir le compte de l'utilisateur des données." Voici le lien: https://firebase.google.com/docs/auth/android/password-auth#sign_in_a_user_with_an_email_address_and_password
Cela signifie donc que, si vous ne le code ci-dessus (moins le FirebaseUser ligne), et ensuite déclarer et initialiser une Firebase AuthStateListener comme indiqué ci-dessous, vous pouvez définir le nom complet de l'utilisateur et de passer ensuite à toute autre activité que vous voulez:
Et n'oubliez pas d'ajouter le AuthStateListener dans onResume() comme ceci:
De même, n'oubliez pas de le supprimer dans la méthode onStop comme suit:
Et fait! Vous définissez le nom complet de l'utilisateur de sorte que vous pouvez l'utiliser dans d'autres activités. Ce serait utile si vous souhaitez salue l'utilisateur ou l'accès à d'autres données de l'utilisateur lié à l'affichage du nom.