Как свернуть приложение Flutter для Android и iOS (чтобы протестировать Firebase Crashlytics)?

Я хочу проверить отчет о сбое, используя Firebase Crashlytics в моем Flutter приложении. Мне нужно, чтобы программно произошел фатальный сбой моего приложения flutter как для Android, так и для iOS. Есть идеи?

Интеграция Angular - Firebase Analytics
Интеграция Angular - Firebase Analytics
Узнайте, как настроить Firebase Analytics и отслеживать поведение пользователей в вашем приложении Angular.
17
0
8 967
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

Ответ принят как подходящий

Вы должны иметь возможность генерировать исключение Dart, делая это в любом месте вашего приложения Flutter:

throw Exception("This is a crash!");

Или с помощью произвольного объекта:

throw "This is a crash!";

Вы можете найти дополнительную информацию об исключениях дротика в языковом туре и, если хотите, вы можете создать свой собственный тип исключения, как описано в этот ТАК ответ.

Выбрасывая такое исключение, приложение не будет аварийно завершать работу, но будет отображать исключение на экране.

Brinda Rathod 14.11.2019 06:04

@BrindaRathod, вы правы, это не должен быть утвержденный ответ, так как он сбивает с толку ...

vigdora 03.01.2022 15:28

Если у вас есть плагин flutter_crashlytics, вы можете протестировать его с помощью

FirebaseCrashlytics.instance.crash();

Я пробовал, но по-другому не показывал сбоев в консоли firebase?

tinto mathew 16.12.2020 12:17

Мы хотим отправлять информацию о сбоях, сделанных нами, а не пакетом. Как мы можем этого добиться?

K.Amanov 18.05.2021 11:52

интегрировать firebase_crashlytics

 Crashlytics.instance.crash();

с помощью плагина firebase_crashlytics

FirebaseCrashlytics.instance.crash();

Вы должны включить Crashlytics

void main() async{
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  if (kDebugMode) {
    FirebaseCrashlytics.instance.setCrashlyticsCollectionEnabled(true);//disable false
  }else{
    FirebaseCrashlytics.instance.setCrashlyticsCollectionEnabled(true);
  }

Попробуйте добавить любое значение без инициализации списка. произойдет сбой приложения и выдаст эту ошибку The method 'add' was called on null.

List list;

list.add("add");

Вы можете сломать приложение Flutter разными способами:

  1. throw(Exception('Hello Crashlytics')); как в ответе @Xavi Rigau
List list;

list.add("add");

Как это делает @Paresh Mangukiya.

3.

final a = [12];
print(a[1]);

Но есть 2 вещи ВАЖНЫЙ, которые вы должны учитывать:

  • Вы должны запустить свое приложение в режиме выпуска, например, с помощью команды flutter run --release
  • В консоли Crashlytycs по умолчанию отображаются только фатальные сбои. Приведенные выше сбои не являются фатальными сбоями. Итак, вы должны очистить фильтр, чтобы увидеть все типы сбоев. (Фильтр можно отфильтровать на панели инструментов Crashlytics, нажав кнопку (x) рядом с фильтром). Подробнее об этом вы можете прочитать в этот ТАК ответ

Проверь это . Это из официальной документации. https://firebase.flutter.dev/docs/crashlytics/использование

Как только ваша конфигурация будет соответствовать документации для crashlytics, FirebaseCrashlytics.instance.crash(); приведет к сбою приложения.

Другие вопросы по теме