获取错误在Firebase 3 for Android中更改用户的电子邮件/密码

时间:2016-05-20 15:02:13

标签: android firebase firebase-authentication

我想抓住新方法的错误来更改Android的电子邮件和密码,但我似乎找不到任何东西。有人能指出我正确的方向吗?

官方文件对此并不清楚。

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
String newPassword = "SOME-SECURE-PASSWORD";

user.updatePassword(newPassword)
        .addOnCompleteListener(new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                if (task.isSuccessful()) {
                    Log.d(TAG, "User password updated.");
                }
            }
        });

https://firebase.google.com/docs/auth/android/manage-users#set_a_users_password

1 个答案:

答案 0 :(得分:2)

回调使用Google Play服务中的新Task课程。有两种方法可以捕获错误:

  1. 使用addOnCompleteListener,检查isSuccessful并检查getException是否失败。
  2. 使用addOnSuccessListeneraddOnFailureListener。后一个回调将包含Exception错误。
  3. 返回的实际异常记录在每种方法的参考文档中。例如,updatePassword可能会失败:

      如果密码不够强,则抛出
    • FirebaseAuthWeakPasswordException
    • FirebaseAuthInvalidUserException如果当前用户的帐户已被禁用,删除或其凭据不再有效,则抛出
    • 如果用户的上次登录时间不符合安全阈值,则会引发
    • FirebaseAuthRecentLoginRequiredException。使用reauthenticate(AuthCredential)解决问题。如果用户是匿名用户,则不适用。