Как обработать ошибки аутентификации firebase с сопрограммами в kotlin? - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть функция приостановки, которая регистрирует пользователя с помощью firebase auth.

Я знаю, что есть коды ошибок auth, как я могу получить их внутри try cath?

Я думал использования e.message, а затем перевести их на мой язык, но я не знаю, будет ли это хорошим подходом.

override suspend fun registerUserFirebase(email: String, password: String):Boolean {
    return try {
        auth.createUserWithEmailAndPassword(email, password).await()
        true
    } catch (e: Exception) {            
        if (e.message == "The email address is already in use by another account."){
            // Do stuff
        }
        false
    }
}

1 Ответ

1 голос
/ 09 апреля 2020

Здесь нет ничего особенного в отношении сопрограмм. В соответствии с API-документами для createUserWithEmailAndPassword () может выдавать различные типы исключений:

Исключения

  • Исключение FirebaseAuthWeakPasswordException, если пароль недостаточно силен
  • Исключение FirebaseAuthInvalidCredentialsException, если адрес электронной почты искажен
  • Исключение FirebaseAuthUserCollisionException, если учетная запись с указанным адресом электронной почты уже существует

Ваш код потребуется проверьте тип исключения с помощью is или, возможно, с помощью when, и определите, что делать с каждым на его собственных условиях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...