firebase / firebase/FirebaseUI-Android

[Auth-UI][v10.0.0-[beta05] SMS quota rejection maps to NetworkException, phone auth shows "check your internet connection" instead of "used too many times"

Aperta
#2,513 2 commenti 0 reazioni 1 assegnatario Rivendicata da @demolaf Vedi su GitHub
auth reproduced type: bug
Lingua principale
Kotlin
Stelle
4.8k
Fork
1.9k
Merge medio
2g 9h
PR unite (30g)
42

Descrizione

## Steps to reproduce

1. Request SMS verification repeatedly for one phone number until Firebase rejects it for quota.
2. Enter that number and tap send.

## Observed results:
「認証エラー / ネットワーク エラー。インターネット接続を確認してください。」 ( mean Please check your internet connection)
a network error, on a device with working connectivity. FirebaseUI iOS shows the correct 「この電話番号は何度も使用されています」(mean This phone number has been used too many times) for the same account state.

## Expected results:
`TooManyRequestsException`, whose dialog message resolves to `fui_error_too_many_attempts ` This is a string the library already ships translated in ja/ko/zh-rTW ("This phone number has been used too many times"). The correct copy exists and is simply unreachable.

## Root cause:
Firebase reports SMS-quota rejection as `FirebaseTooManyRequestsException`, which extends `FirebaseException` not`FirebaseAuthException`.
`AuthException.from` only checks the `ERROR_TOO_MANY_REQUESTS` error code inside the is `FirebaseAuthException` branch, so the quota exception falls through to the catch-all is `FirebaseException -> NetworkException. ErrorRecoveryDialog` then renders `fui_no_internet`.

Is this possible to add `FirebaseTooManyRequestsException -> TooManyRequestsException(...)` before the is FirebaseException branch to fix this issue ?

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.