当我们使用Firebase for Android注册时,如何验证Google验证的电子邮件ID?

时间:2017-01-03 05:54:19

标签: java android firebase firebase-authentication

当用户在Android中使用Firebase电子邮件/密码SIGN-IN METHOD注册时,我们如何验证他们的电子邮件?

1 个答案:

答案 0 :(得分:4)

对于Android电子邮件验证,首先您可以通过firebase here查看文档。

  

向用户发送验证电子邮件

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

user.sendEmailVerification()
    .addOnCompleteListener(new OnCompleteListener<Void>() {
        @Override
        public void onComplete(@NonNull Task<Void> task) {
            if (task.isSuccessful()) {
                Log.d(TAG, "Email Sent.");
            }
        }
    });

在我的应用中,只要用户注册,就会触发sendEmailVerification();

 private void sendEmailVerification() {

    FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

    user.sendEmailVerification()
            .addOnCompleteListener(new OnCompleteListener<Void>() {
                @Override
                public void onComplete(@NonNull Task<Void> task) {
                    if (task.isSuccessful()) {
                      Log.d(TAG, "Email verification sent.");                  
                    }
                }
            });
}

使用以前的方法,您的用户现在将获得验证电子邮件。它会看起来很像这样的东西

enter image description here

他们是否验证了他们的电子邮件?

 private void IsEmailVerified() {

    FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

    if (user.isEmailVerified()) {
           Log.d(TAG, "Email is verified.");
    } else {
          Log.d(TAG, "Email is not verified !.");
    }

}

可悲的是,您可能无法自定义验证电子邮件的内容/正文(我已经与Firebase大量对应,以提供其他不那么可怕的模板)。您可以更改标题或邮件发件人ID,但这就是它的全部内容。

除非您使用自己支持的Web重新链接应用程序。 Here