为 debugging/release 初始化 Fabric.io 的正确方法

Proper way to initialize Fabric.io for debugging/release

来自 Fabric.io 的一个关于 Crashlytics 的简短问题:

要在调试中禁用它,我们是否仍应使用:

 Crashlytics crashlytics = new Crashlytics.Builder().disabled(BuildConfig.DEBUG).build();
        Fabric.with(this, crashlytics);

或者 Fabric 是否处理 debug/release 差异,我们应该只使用:

Fabric.with(this, new Crashlytics());

已禁用禁用方法,如果您在 Android Studio 中使用 Fabric 插件,它总是会将 crashlytics 实例更改为 new Crashlytics()

试试这个。

Fabric.Builder.debuggable(boolean)

Java 文档 API Crashlytics

setDebugMode(boolean debug) Deprecated. use Fabric.Builder.debuggable(boolean) instead

已更新

有关详细信息,请访问

对于新的 2.3.+ 版本,您应该使用如下内容:

Fabric.with(this, new Crashlytics.Builder()
            .core(new CrashlyticsCore.Builder()
                    .disabled(BuildConfig.DEBUG)
                    .build())
            .build());

另一种选择是使用应用程序的调试版本:https://www.littlerobots.nl/blog/stetho-for-android-debug-builds-only/

基本上,您需要在 debug 文件夹中有一个 Application 的调试版本,以及一个可调试版本的 Fabric 和清单文件,这将解决你的 DebugApp:

<manifest
    package="com.mycompany"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <application
        tools:replace="android:name"
        android:name=".DebugApp"/>

</manifest>