Comment envoyer un email de vérification avec Firebase?
Je suis de la signature de mes utilisateurs à l'aide de Firebase l'email et le mot de passe de la méthode. comme ceci:
mAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
FirebaseUser signed = task.getResult().getUser();
writeNewUser(signed.getUid());
new android.os.Handler().postDelayed(
new Runnable() {
public void run() {
updateUser(b);
}
}, 3000);
} else {
new android.os.Handler().postDelayed(
new Runnable() {
public void run() {
onSignupFailed();
}
}, 3000);
}
}
});
Après l'email de l'utilisateur a été enregistré avec succès, je voudrais Firebase pour envoyer un e-mail de vérification. Je sais que c'est possible à l'aide de Firebase est sendEmailVerification
. En plus de l'envoi de ce courriel, je veux le compte de l'utilisateur sera désactivé jusqu'à ce qu'ils la vérification de l'email. Cela exigerait aussi l'aide de Firebase est isEmailVerified
fonctionnalité. Cependant, j'ai pu obtenir de Firebase pour envoyer l'e-mail de vérification, je n'ai pas été en mesure de comprendre l'obtenir pour activer et désactiver le compte de l'envoi de l'email de vérification et après qu'il a été vérifié.
source d'informationauteur amigo
Vous devez vous connecter pour publier un commentaire.
Cette question est sur la façon d'utiliser Firebase pour envoyer l'e-mail de vérification. L'OP est pas en mesure de comprendre comment activer et désactiver le compte de l'envoi de l'email de vérification et après qu'il a été vérifié.
Aussi, ce n'est pas bien documentée dans la firebase de la documentation. Donc, je suis en train d'écrire une procédure étape par étape que quelqu'un peut suivre si il/elle est confrontée au problème.
1) l'Utilisateur peut utiliser createUserWithEmailAndPassword méthode.
Exemple:
Si le nouveau compte a été créé, l'utilisateur n'est connecté, et le AuthStateListener exécute le onAuthStateChanged de rappel. Dans le rappel, vous pouvez gérer le travail de l'envoi de l'e-mail de confirmation à l'utilisateur.
Exemple:
Maintenant l'envoyer e-mail de vérification peut être écrit comme:
Arrive maintenant à LoginActivity:
Ici si l'utilisateur est connecté alors on peut tout simplement appeler une méthode où vous êtes l'écriture de la logique pour vérifier si l'e-mail est vérifiée ou non.
Exemple:
Considérons maintenant le checkIfEmailVerified méthode:
Donc ici, je m de vérifier si l'e-mail est vérifiée ou non. Si non, alors vous déconnecter l'utilisateur.
C'était mon approche pour garder une trace des choses correctement.
Utilisation
FirebaseAuth.getInstance().getCurrentUser().sendEmailVerification()
etFirebaseAuth.getInstance().getCurrentUser().isEmailVerified()
Il n'y a aucun moyen de désactiver le compte via le Firebase SDK. La chose que vous pouvez faire est d'utiliser la
GetTokenResult
contenant le Firebase Auth ID de Jeton et de les valider par rapport personnalisé de votre backend, ou définir un indicateur de Firebase base de données correspondant à cet utilisateur. Personnellement, j'irais avec le drapeau dans la Firebase base de donnéesenvoyer la vérification de Messagerie de l'utilisateur
vérifie si l'utilisateur est vérifiée