您好,我是新手,我正在制作一个社交媒体应用程序,其中的用户将使用电子邮件和密码登录。我想知道如何显示用户登录错误,例如密码不正确/电子邮件不正确等。我正在使用Firebase作为应用程序的后端数据库
我已经成功创建了应用程序的登录和注册部分,但无法显示其他错误。这是我的代码有人请帮助我
Future LogIn(BuildContext context) async {
FirebaseUser user = (await _Auth.signInWithEmailAndPassword(
email: getEmail(), password: getPass()))
.user;
try {
if (user.isEmailVerified) {
Navigator.pushNamed(context, HomeScreen.id);
//Navigator.pushNamed(context, HomeScreen.id);
ClearAllInfo();
} else {
user.sendEmailVerification();
Alert("EMAIL NOT VERIFIED").show(); //email not verified alert
}
} catch (e) {}
}
最佳答案
documentation for signInWithEmailAndPassword
列出了所有可能的错误:
ERROR_INVALID_EMAIL
ERROR_WRONG_PASSWORD
ERROR_USER_NOT_FOUND
ERROR_USER_DISABLED
ERROR_TOO_MANY_REQUESTS
ERROR_OPERATION_NOT_ALLOWED
现在,您可以在
try
-catch
中进行测试:try {
FirebaseAuth.instance.signInWithEmailAndPassword(...); // Your signin call.
} on PlatformException catch (e) {
switch (e.code) {
case 'ERROR_WRONG_PASSWORD':
// Handle wrong password.
break;
// Add other cases.
default:
break;
}
}
请注意,我添加的
catch
块仅捕获PlatformException
。如果希望看到其他异常,则可能需要添加另一个常规catch
块或on
特定的异常。
关于firebase - 如何处理登录异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58343030/