无法在 Firebase 应用中禁用 Crashlytics(不再)

2024-03-15

升级到后com.crashlytics.sdk.android:crashlytics:2.7.1@aar(从 2.6.8 开始),我无法再在我的 Firebase 应用程序中禁用 Crashlytics。

看起来 Crashlytics 库本身中有一些代码可以使用 Crashlytics 套件初始化 Fabricenabled每当它检测到它正在 Firebase 应用程序中运行时。确实在启用 Crashlytics 的情况下进行初始化ext.enableCrashlytics = false抛出 UnmetDependencyException 并在启动时使应用程序崩溃(事实上,在我的代码之前)Application.onCreate runs).

有谁知道解决方法吗?目前坚持使用 2.6.8 即可。 这是我的代码中的内容,在升级之前一直有效:

应用程序/build.gradle:

ext.enableCrashlytics = false

Application.java(onCreate,按要求提供完整方法体):

super.onCreate();
if (LeakCanary.isInAnalyzerProcess(this)) {
    return;
}
LeakCanary.install(this);
// First Fabric invocation
Fabric.with(this, new Crashlytics.Builder().core(
    new CrashlyticsCore.Builder().disabled(true).build()).build());
RxJavaPlugins.setErrorHandler(e -> LOGGER.error("Undeliverable RxJava error", e));
// First Firebase invocation
FirebaseDatabase db = FirebaseDatabase.getInstance();
if (BuildConfig.DEBUG) {
    db.setLogLevel(com.google.firebase.database.Logger.Level.DEBUG);
}
db.setPersistenceEnabled(true);

根据迈克的回答,我添加我的代码:

Gradle:

buildTypes {
   release {
        manifestPlaceholders = [crashlyticsEnabled: true]
    }

    debug {
        manifestPlaceholders = [crashlyticsEnabled: false]
    }
}

清单.xml:

<meta-data
    android:name="firebase_crashlytics_collection_enabled"
    android:value="${crashlyticsEnabled}" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法在 Firebase 应用中禁用 Crashlytics(不再) 的相关文章

随机推荐