Как настроить Firebase Crashlytics для режима отладки и выпуска - PullRequest
0 голосов
/ 11 февраля 2020

Я хотел бы настроить аварийные сбои для режима отладки и выпуска, но я не могу найти нужную информацию в документах Firebase.

В настоящее время приложение находится в одном проекте, и для отладки есть только один аварийный отказ и релиз. Я не могу создать другое приложение с тем же пакетом, что и предыдущий. Другой вариант - иметь другой проект с тем же пакетом, что и первый, но мне нужен один проект из-за API-ключей и других функций.

У меня есть две идеи, но без решения:

  1. Один проект -> два приложения (с одинаковым пакетом? -> сейчас это не работает) -> два google-сервиса. json и разновидности.
  2. Один проект -> одно приложение -> две настройки аварийного отключения для отладки и выпуска (как это сделать?)

У кого-нибудь есть какие-нибудь советы, которые могут помочь решить эту проблему дело?

1 Ответ

1 голос
/ 11 февраля 2020

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

Короче:

Идентификатор пакета должен отличаться, чтобы отличать отладку от выпуска. вариант в одном проекте. Мы можем выделить это, используя тип сборки.

Далее второй идентификатор можно добавить в проект Firebase . Crashlytics проведет различие между ними в приложении.


Чтобы достичь этого, мы можем сделать следующее.

1. В консоли Firebase

a. Go к настройкам проекта.

b. Добавьте дополнительное Android приложение со следующей конфигурацией:

  • Идентификатор приложения: <app_identifier>.debug
  • Имя: // (Все, что угодно), убедитесь, что пометьте что-то вроде Debug в конце

c. Зарегистрируйте это приложение

d. Загрузите файл google-services.json, он понадобится нам на следующем шаге.

e. Go на вкладку Crashlytics в левом меню

f. Включите Crashlytics для обоих приложений

  • Нажмите Next на втором шаге
  • Игнорируйте третий шаг, сборка кода включит его

2. Android источник

а. Поместите файл google-services.json в проект (в папку app) -> Перезаписать старый

b. Откройте файл app/build.gradle.

  • Внутри блока android будет отображаться buildTypes.
  • Для типа сборки debug добавьте applicationIdSuffix '.debug' (добавьте тип отладки, если это не так. в файле не существует)
  • Это приведет к тому, что тип отладочной сборки будет иметь .debug после фактического идентификатора пакета для отладочной сборки.
  • Это не повлияет на сборки выпуска 1079 *

c. Результат должен выглядеть так:

android {
    // ...

    buildTypes {
        debug {
            applicationIdSuffix '.debug'
        }
        release {
            // ...
        }
    }
}

3. Готово!

Создайте cra * sh, и в результате вы получите соответствующее приложение в Firebase Crashlytics . Существует раскрывающийся список с обоими проектами в верхнем левом углу страницы.

Теперь Crashlytics будет автоматически использовать правильное приложение Firebase при отправке cra sh отчет. Это работает, поскольку google-services.json фактически содержит конфигурацию для обоих типов сборки. Crashlytics будет использовать правильный на основе идентификатора пакета.

Последнее примечание: Не забудьте включить Crashlytics в Вкладка Crashlytics в консоли Firebase (как описано в шаге 1f )

...