Android - Crashlytics 不会在整个应用程序范围内记录错误,仅 activity 它是在

Android - Crashlytics doesn't log errors app wide, only activity it was initialized in

自从我将 Crashlytics 安装到我们的应用程序后,我就一直遇到问题。我无法让它报告整个应用程序崩溃。

初始安装建议我们在扩展的基础应用程序中添加启动命令 Fabric.with(this, new Crashlytics());。当我把它放在这里时,它不会在应用程序的任何地方报告任何崩溃。

然后我将它移至我们的登录 activity,虽然它会报告我在那里触发的崩溃,但它不会报告任何其他 activity。

我已将其移至其他两个活动,我得到了相同的结果。它只报告我在哪里初始化它,并且只有在我初始化它一次时才有效(我不能在每个 activity 中初始化它)

我通过电子邮件发送了他们的支持,他们基本上说,这不是它应该的行为方式,基本上就是这样,没有任何建议或任何东西,我没有收到他们的进一步回复。很有帮助。

我以前在我的其他应用程序中使用过它并且运行良好,所以我不知道这里出了什么问题?

这是我的 gradle 文件

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    mavenCentral()
    maven { url 'https://maven.fabric.io/public' }
}

dependencies {
    compile fileTree(include: '*.jar', dir: 'libs')
    compile 'com.google.android.gms:play-services:6.5.87'
    compile 'com.android.support:appcompat-v7:22.1.0'
    compile 'info.hoang8f:android-segmented:1.0.4'
    compile 'com.melnykov:floatingactionbutton:1.3.0'
    compile 'de.greenrobot:eventbus:2.4.0'
    compile 'com.google.code.gson:gson:2.3.1'
    compile('com.crashlytics.sdk.android:crashlytics:2.2.3@aar') {
        transitive = true;
}

}
android {

defaultConfig {
    compileSdkVersion 22
    buildToolsVersion "21.1.2"
}

productFlavors {

    flavorone{
        applicationId "ca.flavorone"
        manifestPlaceholders = xxxx

    }

    flavortwo{
        applicationId "ca.flavortwo"
        manifestPlaceholders = xxxx

    }
}

packagingOptions {
    exclude 'META-INF/ASL2.0'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/notice.txt'
    }
}

来自 Fabric 的迈克 - 很奇怪听到您在我们的支持团队中的经历。如果你有 onCreate() ,那么 init 应该在你的应用程序的子类中。您使用的是多进程还是安装了任何其他异常处理程序?如果是这样,请删除其他异常处理程序,您就可以开始了!

对我有用的是在流程中单独初始化 Fabric,例如,如果您的单独流程有服务,请在您的 onCreate() 方法中添加此服务:

Fabric.with(this, new Crashlytics())