Я использую 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.
Спасибо.