Я использую Firebase
для функций Android и Firebase Auth
.
Я пытаюсь FirebaseAuth.signInWithEmailAndPassword
, и в случае его отказа я хочу знать "Почему процесс signIn не удался?"
signInWithEmailAndPassword
имеет addOnFailureListener
API.
И я могу поймать Exception
(возможно FirebaseAuthException
) в методе обратного вызова onFailure
.
auth.signInWithEmailAndPassword(loginRequest.id, loginRequest.password)
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
if (e instanceof FirebaseAuthException) {
((FirebaseAuthException) e).getErrorCode());
}
}
});
Я хочу знать, почему процесс SignIn завершился неудачно. в onFailure
.
Я думаю, это можно сделать следующим образом:
-
e
проверка типа экземпляра (e instanceOfFirebaseAuthInvalidUserException
илиFirebaseAuthInvalidCredentialsException
или,,) -
e.getErrorCode()
Я не хочу печатать чеки (это грязно).
Я предпочитаю способ выбора 2. выше. Но я не смог найти определение коллекции возвращаемых значений e.getErrorCode()
.
например, ERROR_INVALID_EMAIL
, ERROR_ACCOUNT_EXISTS_WITH_DIFFERENT_CREDENTIAL
и т.д.
(Где они определены?)
Скажите, пожалуйста, какой способ проверить причину Firebase auth failed
.
Спасибо.