无法在Firebase中验证电子邮件

Fah*_*eem 4 email android firebase firebase-authentication

我正在使用Firebase的isEmailVerified方法来验证电子邮件。以下是代码:

 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_verifying);
    FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
    mAuth=FirebaseAuth.getInstance();
    spinner=(ProgressBar)findViewById(R.id.progressBar);
    spinner.setVisibility(View.GONE);
    Log.e("I am launched","hello");
    if(user.isEmailVerified()==true){
       Log.e("I am here","hello");
        State state= new AccountSettingUp(this);
       state.doAction();
   } else {
        Log.e("Maybe i am here","yes");
       user.sendEmailVerification()
               .addOnCompleteListener(new OnCompleteListener<Void>() {
                   @Override
                   public void onComplete(@NonNull Task<Void> task) {
                       if (task.isSuccessful()) {
                           Log.d("email", "Email sent.");
                       }
                   }
               });
   }
Run Code Online (Sandbox Code Playgroud)

在此,该else代码仅应在未验证电子邮件时运行。但是,即使在我验证了电子邮件并重新启动活动之后,该if语句也没有true,并且电子邮件将再次发送。

Bob*_*der 5

在当前版本的Firebase身份验证(10.0.1)中,此行为似乎是一种限制,可能是一个错误。在此相关问题中报告了相同的问题

我尝试在电子邮件验证后对用户数据进行reload()。那没有帮助。如相关问题中所述,似乎需要注销/登录才能获得新的电子邮件验证状态。