Flutter 异常捕获&全局报错获取&runZone&FlutterError

Flutter 异常捕获&全局报错获取&runZone&FlutterError,第1张

Flutter 获取全局异常 并捕获 处理 直接上代码
void main() async {
// **runZoned** 会获取其他异常数据,测试感觉不适用,根据自己需求使用 
  runZonedGuarded(() async {
    // 获取框架异常 WidgetFlutterBinding用于与 Flutter 引擎交互
    WidgetsFlutterBinding.ensureInitialized();
    
    FlutterError.onError = (FlutterErrorDetails details) {
      // 异常上报 转发容易遗漏异常消息
      if ((details.exception) != null) {
        debugPrint("FlutterError-${details.exception}");
      }
    };
    // 运行app
    runApp(APP());
  }, (Object e, StackTrace s) {
    // 异常上报
    if (e != null) {
      debugPrint("runZonedGuarded-$e");
    }
  });
}

备注: 如果你的应用在runApp 中调用了 WidgetsFlutterBinding.ensureInitialized() 方法来进行一些初始化 *** 作,则必须在runZonedGuarded中调用WidgetsFlutterBinding.ensureInitialized()

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/871260.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存