[英]Catching unhandled exception in Flutter
我试图在我的 Flutter 应用程序中捕获所有未处理的异常。 这是我的 main.dart:
void main() async {
FlutterError.onError = (FlutterErrorDetails details) {
print("FlutterError.onError");
};
try {
runZoned<Future<void>>(
() async {
runApp(App());
},
onError: (dynamic error, StackTrace stackTrace) {
print("runZoned.onError");
},
);
} catch (ex) {
print("main.catch");
}
}
...但是,这些方法都不起作用,我的应用程序在 iOS 模拟器中运行时输出以下内容:
[VERBOSE-2:ui_dart_state.cc(166)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 61, address = localhost, port = 57562
...我如何捕捉这个异常?
好的,我已经解决了这个问题。 我的一些初始化逻辑在runZoned
块之外。 我错误地认为runZoned
中所需要的runZoned
对runApp
的调用。 我已将所有内容都放在runZoned
,现在它可以正确地捕获错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.