我看到了一些类似的问题,但任何解决方案都没有帮助我。所以基本上我想在用户已经登录时在身份验证中更改我的电子邮件和密码。
我尝试使用 updateEmail/password 方法,但它没有改变任何内容。 这是我编写的代码示例:
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
user.updateEmail(NewEmail)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Log.d(TAG, "User email address updated.");
}
}
});
(变量“NewEmail”是用户决定更改的电子邮件,然后应该在身份验证中更改电子邮件) 问题是在这种情况下,它向我显示“updateEmail”上的行,就像它告诉我该方法不适用于类似的方法一样,并且我尝试的所有方法都不起作用。 关于如何更改密码,我尝试了相同的方式(来自 firebase 身份验证站点的代码),它没有像电子邮件方法中那样的“updatepassword”行,但它没有更改密码,并且当用户需要时再次登录需要以前的密码(用户注册时使用的第一个密码)。 如果有人有任何解决方案请帮助我!谢谢:)
如果任务不成功,则会出现一个异常,解释失败的原因 - 但您的代码不处理这种情况。要找出问题的根本原因:
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Log.d(TAG, "User email address updated.");
}
else {
Log.e(TAG, "User email address update failed", task.getException());
}
}