我正在尝试捕获Firebase(从失败的登录)引发的异常而扑朔迷离,但我的运气为零。 .catcherror
似乎可以打印出错误,但是仍然有异常使我的代码崩溃。我在其他帖子中也发现了类似的问题,但是似乎没有答案可以帮助我,这使我的代码无法使用,非常感谢。
try { signIn(typedemail, typedpassword).catchError((e) {
print(e);
print(e.message.toString()+"rrrrr");
print(e.code);
print(e.details);
}); }
on PlatformException catch (e) {
print("on worked");//this doesnt work }
finally{
print("finally");
}
如果我禁止打破异常,我会得到这个
D / FirebaseApp(11795):通知了0个身份验证状态侦听器。
I / flutter(11795):PlatformException(异常,电子邮件地址严重错误 格式化。,空)
I / flutter(11795):电子邮件地址格式错误。rrrrr
I / flutter(11795):例外
I / flutter(11795):空
答案 0 :(得分:1)
您尝试两次捕获异常;在添加.catchError(...)
时单击一次,第二次是因为用try-catch块将其包围。
我建议您仅用try-catch块将其包围:
try {
signIn(typedEmail, typedPassword);
} on PlatformException catch (error) {
print("Error: " + error.toString());//Will work when you have errors
} finally {
print("finally");
}