Я нашел this быть самым простым решением:
release {
...
buildConfigField 'Boolean', 'enableCrashlytics', 'true'
}
debug {
buildConfigField 'Boolean', 'enableCrashlytics', 'false'
}
Вышеуказанные линии будут создавать статическое булево поле, называемое enableCrashlytics
в BuildConfig
файл, который вы можете использовать, чтобы решить, следует ли начать Fabric
или нет:
if (BuildConfig.enableCrashlytics)
Fabric.with(this, new Crashlytics());
ПРИМЕЧАНИЕ: С помощью этого метода Ткани инициализируются только в выпусках (как указано в приведенном выше коде). Это означает, что вам нужно поместить вызовы к методам статистики в классе Crashlytics
в блоке if
, который проверяет, была ли Инициализирована Ткань, как показано ниже.
if (Fabric.isInitialized())
Crashlytics.logException(e);
В противном случае приложение будет врезаться с Must Initialize Fabric before using singleton()
ошибки при тестировании на эмуляторе.
Вы пытались просто удалить свой ключ api из манифеста, я не помню, если это катастрофа. – Timmetje
@timmied Он падает. Также комментирование всей строки в «Manifest» приводит к сбою приложения, поэтому это делает вопрос немного более законным. – Michael