【发布时间】:2021-03-18 08:57:46
【问题描述】:
我们在颤振应用中使用firebase_crashlytics: ^0.4.0+1。在 runApp() 中,我们开始监听错误和崩溃,就像文档中提到的那样。
runZonedGuarded(() {
runApp(
..
}, (error, stackTrace) {
FirebaseCrashlytics.instance.recordError(error, stackTrace);
});
通常会报告崩溃,但不会针对这些类型的崩溃小部件库发现异常。 在某些情况下,对象可能为空,但没有将崩溃报告给 firebase crashlytics 仪表板,而是什么也没有发生。用户只收到一个灰屏,就是这样。 因此,我们只会在用户报告这些错误时收到通知,但我们不会收到任何日志。 这是一个非致命错误,我们应该使用 recordFlutterError 方法吗?
顺便说一句,这是在抛出错误时调用的:
Function originalOnError = FlutterError.onError;
FlutterError.onError = (FlutterErrorDetails errorDetails) async {
await FirebaseCrashlytics.instance.recordFlutterError(errorDetails);
// Forward to original handler.
originalOnError(errorDetails);
即使调用 originalOnError(errorDetails) 方法,该错误也不会记录在 firebase crashlytics 仪表板中。
我们怎样才能让这些非致命错误也被报告?
【问题讨论】:
标签: firebase flutter crashlytics