Ich frage mich, warum FirebaseAuthWeakPasswordException
nie erwischt wird. Wann immer es WEAK_PASSWORD
ist, wird die FirebaseException
statt FirebaseAuthException
oder FirebaseAuthWeakPasswordException
geworfen. Also, ich kann nicht einmal mit getErrorCode()
Methode überprüfen.`FirebaseAuthWeakPasswordException` Niemals erwischt
firebaseAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
// registered
} else {
try {
throw task.getException();
} catch(FirebaseAuthWeakPasswordException e) {
passwordEditText.setError(getString(R.string.error_weak_password));
passwordEditText.requestFocus();
} catch(FirebaseException e) {
Log.e(TAG, e.getMessage());
}
}
}
});
Wie kann ich wissen, ob es die WEAK_PASSWORD
Ausnahme ist?
Können Sie bestätigen, dass Sie versuchen, einen Benutzer mit einem Kennwort mit weniger als 6 Zeichen zu erstellen, und die 'FirebaseAuthWeakPasswordException' nicht abgefangen wird? – RamithDR
Ich denke, es ist ein Firebase-Bug. 'FirebaseAuthInvalidCredentialsException' wird zurückgegeben und kann für eine fehlerhafte E-Mail-Adresse und' FirebaseAuthUserCollisionException' abgefangen werden, wenn der Benutzer bereits existiert, aber nicht 'FirebaseAuthWeakPasswordException' für ein schwaches Passwort. –
'FirebaseAuthWeakPasswordException' ist an meinem Ende gefangen und Ihr Code ist mir ähnlich. Sie haben immer die Möglichkeit, eine Validierungsprüfung auch auf Client-Seite durchzuführen (überprüfen Sie, ob' password' weniger als 6 Zeichen lang ist). – RamithDR