Я включил Flutter Crashlytics в наше приложение, но он сообщает о сбое трассировки стека в файлах класса Java, а не в файлах Dart. Поэтому трудно определить, что это за файл и номер строки, где эта проблема возникла в кодовой базе флаттера.
Вот пример одного такого отчета cra sh из Firebase Crashltytics исключения Uncaught:
Non-fatal Exception: java.lang.Exception: NoSuchMethodError: The method 'markNeedsBuild' was called on null.
Receiver: null
Tried calling: markNeedsBuild()
at State.setState(State.java:1168)
at _ArgonButtonState.initState.<fn>(initState.java:107)
at AnimationLocalStatusListenersMixin.notifyStatusListeners(AnimationLocalStatusListenersMixin.java:193)
at AnimationController._checkStatusChanged(AnimationController.java:773)
at AnimationController._tick(AnimationController.java:789)
at Ticker._tick(Ticker.java:237)
at SchedulerBinding._invokeFrameCallback(SchedulerBinding.java:1102)
at SchedulerBinding.handleBeginFrame.<fn>(handleBeginFrame.java:1017)
at SchedulerBinding.handleBeginFrame(SchedulerBinding.java:1015)
at SchedulerBinding._handleBeginFrame(SchedulerBinding.java:949)
Вот как инициализируется Crashlytics:
// Pass all uncaught errors from the framework to Crashlytics.
FlutterError.onError = Crashlytics.instance.recordFlutterError;
runZoned(() {
runApp(AppMain(homeWidget));
}, onError: Crashlytics.instance.recordError);
Я сообщаю о перехваченных исключениях следующим образом:
Crashlytics.instance.recordError(error, stack);
Как настроить Crashlytics для отчета о трассировке стека в дротик? Показывает ли Crashlytics ошибочные имена файлов и номера строк для исходного кода Dart?