【问题标题】:Firebase Crashlytics not sending crash report [duplicate]Firebase Crashlytics 未发送崩溃报告 [重复]
【发布时间】:2018-04-03 17:19:54
【问题描述】:

我在我的应用程序中使用 firebase。我将 Crashlytic 添加到我的应用程序中。当我运行时,我模拟了一个异常,但 Crashlytic 从未在我的 firebase 控制台中生成和发送报告。在我得到的异常之下。

04-03 17:10:35.731 12442-12477/com.package.app E/CrashlyticsCore: Tried to write a fatal exception while no session was open.
04-03 17:10:39.733 12442-12442/com.package.app E/CrashlyticsCore: Failed to execute task.
    java.util.concurrent.TimeoutException
        at java.util.concurrent.FutureTask.get(FutureTask.java:177)
        at com.crashlytics.android.core.CrashlyticsBackgroundWorker.submitAndWait(CrashlyticsBackgroundWorker.java:41)
        at com.crashlytics.android.core.CrashlyticsController.handleUncaughtException(CrashlyticsController.java:320)
        at com.crashlytics.android.core.CrashlyticsController$6.onUncaughtException(CrashlyticsController.java:300)
        at com.crashlytics.android.core.CrashlyticsUncaughtExceptionHandler.uncaughtException(CrashlyticsUncaughtExceptionHandler.java:42)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1063)

即使我从Crashlytic get started 模拟崩溃,应用程序也永远不会崩溃

Button crashButton = new Button(this);
crashButton.setText("Crash!");
crashButton.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        Crashlytics.getInstance().crash(); // Force a crash
    }
});
addContentView(crashButton,
               new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
               ViewGroup.LayoutParams.WRAP_CONTENT));

当我模拟自己的应用崩溃时,报告永远不会生成和发送。

Gradle 脚本项目级别

buildscript {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
        maven {url 'https://maven.fabric.io/public'}

        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.1.2'
        classpath 'io.fabric.tools:gradle:1.25.1'
    }
}

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
        maven { url "https://jitpack.io" }
        google()
    }
}

Gradle 构建脚本应用级别

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

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "xxxxxxxxxxxxxxxxxxxxxxxx"
        minSdkVersion 14
        targetSdkVersion 27
        versionCode 3
        versionName "1.0.2"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            debuggable true
            ext.enableCrashlytics = true
        }
    }

}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    implementation 'com.android.support:support-annotations:27.0.2'
    //..........some dependencies
    implementation 'com.android.support:design:27.0.2'
    //implementation 'com.android.support:animated-vector-drawable:27.0.2'
    implementation 'com.android.support:recyclerview-v7:27.0.2'
    implementation 'com.android.support:cardview-v7:27.0.2'
    implementation 'com.android.support:support-v4:27.0.2'
    //implementation 'com.squareup.okhttp3:okhttp:1.5.4'
    implementation 'com.firebaseui:firebase-ui-database:3.2.2'
    implementation 'com.firebaseui:firebase-ui-storage:3.2.2'
    //implementation 'com.google.firebase:firebase-core:12.0.0'
    //................. some dependencies
    //Crashlytics sdk dependency
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.1'
}

apply plugin: 'com.google.gms.google-services'

【问题讨论】:

  • 您的互联网连接了吗?好像是超时了
  • 是连接到网络。我在我的真实设备上运行该应用程序并且它已连接。
  • 你知道吗,也许尝试正常崩溃而不是模拟崩溃...尝试抛出异常。也许 API 调用有问题。还要确保您完全按照他们要求的步骤设置了 crashlytics
  • 您能否发布您的 gradle 文件(应用程序和项目级别)以及您初始化 crashalytics 的位置?
  • Crashlytics 在没有 ext.enableCrashlytics 的情况下为我工作。它不在setup instructions 中。为什么你认为它是必要的?

标签: android firebase crashlytics


【解决方案1】:

我希望您已在 Fabric 仪表板设置中为您在代码中生成的测试崩溃启用通知。

启用后,您将收到崩溃邮件。

【讨论】:

  • 我认为有了firebase我们不需要处理fabric网站。我没有面料网站的帐户。
猜你喜欢
  • 2019-04-18
  • 1970-01-01
  • 2013-07-23
  • 1970-01-01
  • 2015-03-14
  • 2020-03-13
  • 1970-01-01
  • 2021-06-30
  • 1970-01-01
相关资源
最近更新 更多