Flutter Firebase处理异常

时间:2018-09-18 02:56:38

标签: firebase dart firebase-authentication flutter

我正在尝试捕获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):空

1 个答案:

答案 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");
}