Как по-разному обрабатывать случаи отсутствия пользователя и неправильного пароля в Firebase Jetpack Compose [дубликат]Android

Форум для тех, кто программирует под Android
Anonymous
Как по-разному обрабатывать случаи отсутствия пользователя и неправильного пароля в Firebase Jetpack Compose [дубликат]

Сообщение Anonymous »

Код: Выделить всё

override suspend fun signIn(email: String, password: String): Flow =
callbackFlow {
try {
auth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener { task ->
if (task.isSuccessful) {
trySend(Response.Success(true))
val user = auth.currentUser
} else {
try {
throw task.exception!!
} catch (e: FirebaseAuthInvalidCredentialsException) {
trySend(Response.Failure(e))
}
}
}
trySend(Response.Loading)
} catch (e: Exception) {
trySend(Response.Failure(e))
}

awaitClose { }
}
Я хочу обрабатывать случаи, когда пользователь не существует и неправильный пароль, Firebase выдает одно и то же исключение в обоих случаях, так как различить оба случая и сообщить пользователю, почему не удалось войти в систему?

Первоначальная задача не выполнена для действия RecaptchaAction(action=signInWithPassword) с исключением: предоставленные учетные данные аутентификации неверны, имеют неверный формат или срок их действия истек


Подробнее здесь: https://stackoverflow.com/questions/784 ... ently-in-f

Вернуться в «Android»