【发布时间】:2020-05-19 00:00:58
【问题描述】:
在我的 Android 应用中,我正在创建用户并发送验证电子邮件。当用户通过单击收到的电子邮件中的链接进行验证后,我想进入下一页。但是,验证状态没有更新,所以我无法继续。我已尝试退出并再次登录,但我不想以这种方式刷新状态。有什么想法吗?
这是我的代码:
public void onClickContinueBtn() {
final FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
user.reload().addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if(task.isSuccessful()) {
if(!user.isEmailVerified()){
// not verified block
// get into here even if verified
} else {
// email verified, go to next page
}
} else {
// do nothing, or show error
}
}
});
}
【问题讨论】:
-
我遇到了同样的问题,我认为如果不重新验证用户身份,就无法刷新当前 Firebase 版本中的电子邮件验证状态。到目前为止,我发现的最佳解决方案是使用 reauthenticate 方法(例如,在带有电子邮件和密码字段的对话框中)。 firebase.google.com/docs/auth/android/manage-users
标签: android firebase firebase-authentication