如何从Flutter应用发送打印日志?

Kya*_*Tun 2 debugging flutter

如何获取print控制台日志和屏幕截图,以便可以将堆栈跟踪发送到服务器?

Col*_*son 5

您可以使用本机代码获取FlutterView的屏幕截图。

  • 在Android上: Bitmap screenshot = flutterView.getBitmap();
  • 在iOS上,请从Apple 看到此示例

请参阅有关混合Dart和本机代码的平台渠道文档。

至于堆栈跟踪,这是Flutter Sentry库文档中的一些技巧。

要从Flutter中获取堆栈跟踪,请覆盖onError处理程序:

FlutterError.onError = (FlutterErrorDetails details) async {
  throw details;
};
Run Code Online (Sandbox Code Playgroud)

要创建一个具有捕获所有Dart异常的错误处理程序的区域,请runApprunZoned中包装对的调用:

runZoned<Future<Null>>(() async {
  runApp(new MyApp());
}, onError: (error, stackTrace) async {
  if (error is FlutterErrorDetails) {
    // use error.exception and error.stack
  } else {
    // use error and stackTrace
  }
});
Run Code Online (Sandbox Code Playgroud)