В этом руководстве объясняется, как настроить Firebase Crashlytics в вашем приложении с помощью плагина Crashlytics Flutter, чтобы вы могли получать исчерпывающие отчеты о сбоях в консоли Firebase.

Создать проект firebase

на ваш адрес прежде чем пойти visit console из окна, которое открывается Add project Нажмите кнопку, чтобы создать проект firabase.

Описание изображения

Убедитесь, что поле Google Analytics выбрано

Описание изображения

Описание изображения

Описание изображения

Курун npm ile Firebase CLI
(Этот шаг необходим для запуска команды flutterfire.)

npm install -g firebase-tools

Войдите в Firebase, используя свою учетную запись Google:

Войдите в Firebase, используя свою учетную запись Google, выполнив следующую команду:

firebase login

Описание изображения

Перечислите свои проекты Firebase, чтобы проверить, правильно ли загружен интерфейс командной строки и осуществляется ли доступ к вашей учетной записи. Выполните следующую команду:

firebase projects:list

FlutterFire CLI’и курун
Установите FlutterFire CLI, выполнив следующую команду из любого каталога:

dart pub global activate flutterfire_cli

Добавьте предупрежденный путь в поле пути в переменных среды.

образец:
Описание изображения

Добавьте Crashlytics в свой проект Flutter

Чтобы установить плагин Crashlytics Flutter, выполните следующие команды в пути к вашему проекту флаттера после запуска терминала от имени администратора:

flutter pub add firebase_crashlytics

flutterfire configure

Выполнение этой команды гарантирует, что конфигурация Firebase вашего приложения Flutter обновлена, и добавляет в ваше приложение необходимый подключаемый модуль Crashlytics Gradle для Android.

flutterfire configure После запуска команды выберите проект firebase, который вы создали, как показано ниже, и нажмите Enter.

Описание изображения

Наконец, выберите платформу и нажмите клавишу ввода (будут выбраны Android и iOS, вы можете продолжить, нажав клавишу ввода).

Описание изображения

В конце этого процесса создаются два разных идентификатора приложения для Android и iOS.

Описание изображения

Добавьте следующие строки в файл android\build.gradle, как показано на картинке.

 // START: FlutterFire Configuration
        classpath 'com.google.gms:google-services:4.3.10'
        // END: FlutterFire Configuration
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.7.1'
Войти в полноэкранный режим

Выйти из полноэкранного режима

Описание изображения

Добавьте следующие строки в файл android\app\build.gradle, как показано на картинке.

Описание изображения


// START: FlutterFire Configuration
apply plugin: 'com.google.gms.google-services'
// END: FlutterFire Configuration
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

dependencies {
   ...
}
}

apply plugin: 'com.google.firebase.crashlytics'
Войти в полноэкранный режим

Выйти из полноэкранного режима

После завершения запустите проект Flutter:

flutter run

Ваш проект Firebase должен выглядеть как на картинке

Описание изображения

(Необязательно) Если в вашем проекте Flutter используется флаг —split-debug-info (и, возможно, флаг —obfuscate), вы должны использовать Firebase CLI (v.11.9.0+) для загрузки символов Android.

Запустите следующую команду из корня вашего проекта Flutter:

firebase crashlytics:symbols:upload --app=APP_ID PATH/TO/symbols

PATH/TO/symbols каталог — это тот же каталог, который вы указываете во флаге —split-debug-info при создании приложения.

Настройка обработчиков сбоев

Вы можете автоматически перехватывать любые ошибки, возникающие в среде Flutter, переопределяя FlutterError.onError с помощью FirebaseCrashlytics.instance.recordFlutterFatalError:

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  await Firebase.initializeApp();

  // Pass all uncaught errors from the framework to Crashlytics.
  FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterFatalError;

  runApp(MyApp());
}
Войти в полноэкранный режим

Выйти из полноэкранного режима

Вернуть ошибку, чтобы проверить установку

TextButton(
    onPressed: () => throw Exception(),
    child: const Text("Throw Test Exception"),
),
Войти в полноэкранный режим

Выйти из полноэкранного режима

Запустите ваше приложение.

Нажмите на кнопку Throw Test Exception, которую вы добавили, чтобы отправить первый отчет вашего приложения:

Crashlytics консоли Firebase, чтобы увидеть сбой вашего теста. в буфер обмена идти.

Описание изображения

Если вы обновили консоль и по-прежнему не видите сбой теста через пять минут, нажмите, чтобы узнать, отправляет ли ваше приложение отчеты о сбоях. журнал отладки активировать .

Ресурсы:
Диапазон интерфейса командной строки Firebase
Добавьте Firebase в свое приложение
крашлитики
флаттерфайр-не-распознан