Предыдущий Fabri c SDK разрешал такую проверку
if (Fabric.isInitialized()) {
crashSetParam(CrashParameters.ROOT_NODE, nodeInfoCompat.toString())
Crashlytics.logException(ex)
}
Я не могу определить, как это сделать в новом Firebase Android SDK, и это вызывает мои тесты джунта, которые могут коснуться это к кра sh. Я понимаю, что могу обернуть это в интерфейс, но мне также любопытно, как решить это простым способом как выше. Спасибо.
Я также зарегистрировал проблему на github:
https://github.com/firebase/firebase-android-sdk/issues/1437
Без проверки мы получаем что-то подобное при запуске юнит-тестов :
java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process null. Make sure to call FirebaseApp.initializeApp(Context) first.
На данный момент я исправил следующее:
fun logException(ex: Throwable, nodeInfoCompat: AccessibilityNodeInfoCompat?) {
// We check to make sure Fabric is initialized or else the tests will fail - see above comment
try {
FirebaseCrashlytics.getInstance().setCustomKey(CrashParameters.ROOT_NODE, nodeInfoCompat.toString())
FirebaseCrashlytics.getInstance().recordException(ex)
} catch (e: IllegalStateException) {
Timber.e(e);
}
}