Я пытаюсь использовать firebase_crashlytics lib с моим проектом Flutter, проблема в том, что Flutter никогда не падает, я могу генерировать исключения в коде, но все исключения в dart считаются не фатальными исключениями. О них обычно сообщается консоли, но я хотел, чтобы Flutter, нативные и необработанные исключения считались фатальными исключениями.
Я хотел одно из следующего:
- Cra sh приложение, когда у меня возникла непредвиденная исключительная ситуация (закройте приложение с «не отвечает»)
- Сообщить о фатальной исключительной ситуации в консоль Firebase
- Обойти?
Мой код main.dart:
Future main() async {
runZoned<Future<void>>(() async {
await DotEnv().load('.env');
setupNotifications();
FlutterError.onError = Crashlytics.instance.recordFlutterError;
runApp(MyApp());
}, onError: Crashlytics.instance.recordError);
}
То, что я уже пытался сделать:
SystemChannels.platform.invokeMethod('SystemNavigator.pop');
Это работает, но не очень удобно для пользователя - Звоните * Функция 1041 *, которая пыталась взломать sh приложение через
MethodChannel
, не работала.
То, что я мог бы, вероятно, сделать:
- Вызов
toast
чтобы уведомить пользователя о том, что что-то пошло не так - Показать всплывающее окно, уведомляющее пользователя о том, что что-то пошло не так и закрыть приложение
- Просто закройте приложение
- Попробуйте загрузить исходное состояние главного экрана приложения