android - Firebase Crashlytics 不报告崩溃

标签 android firebase crashlytics

我已经成功地将 Firebase 集成到我的项目中
(身份验证和存储效果很好)但是在简单集成 Crashlytics 并故意(而不是故意)使我的应用程序崩溃之后 - 没有崩溃报告出现在崩溃仪表板中。
我确实在 Logcat 中看到:
D/FirebaseApp:com.google.firebase.crash.FirebaseCrash 未链接。跳过初始化
I/CrashlyticsCore:Crashlytics 报告上传完成:5BEDB1320329-0001-43...

我已经将 Crashlytics 集成到其他 3 个应用程序中,没有任何问题,但由于某些原因,它在我的新应用程序中不起作用。
谁能想到我错过了什么?

新下载的 google-services.json 文件就位
我添加到项目gradle文件中:


    buildscript {
        repositories {
            maven {
               url 'https://maven.fabric.io/public'
            }
        }
        dependencies {
            classpath 'com.google.gms:google-services:4.2.0'
            classpath 'io.fabric.tools:gradle:1.26.1'
        }
    }

    allprojects {
        repositories {
           // ...
           maven {
               url 'https://maven.google.com/'
           }
        }
    }

and added to the app gradle file:


    apply plugin: 'io.fabric'

    dependencies {
        // ...
        implementation 'com.google.firebase:firebase-core:16.0.5'
        implementation 'com.crashlytics.sdk.android:crashlytics:2.9.6'
    }

Thanks for your thoughts

Update
enabling Crashlytics debug logs shows that the crash was captured and reported but still nothing shows in the project's Firebase Crashlytics dashboard

D/CrashlyticsCore: Checking for crash reports...
D/CrashlyticsCore: Found crash report /data/.../files/.Fabric/com.crashlytics.sdk.android.crashlytics-core/fatal-sessions/5BEEA22001B0-0001-21C3-C00BC3A0D0B2.cls
D/CrashlyticsCore: Attempting to send 1 report(s)
D/Answers: Response code for analytics file send is 200
D/CrashlyticsCore: Adding single file 5BEEA22001B0-0001-21C3-C00BC3A0D0B2.cls to report 5BEEA22001B0-0001-21C3-C00BC3A0D0B2
D/CrashlyticsCore: Sending report to: https://reports.crashlytics.com/spi/v1/platforms/android/apps/com.salt.logomaker/reports
D/CrashlyticsCore: Create report request ID: null
D/CrashlyticsCore: Result was: 202
I/CrashlyticsCore: Crashlytics report upload complete: 5BEEA22001B0-0001-21C3-C00BC3A0D0B2
D/CrashlyticsCore: Removing report at /data/.../files/.Fabric/com.crashlytics.sdk.android.crashlytics-core/fatal-sessions/5BEEA22001B0-0001-21C3-C00BC3A0D0B2.cls
D/CrashlyticsCore: Checking for crash reports...
D/CrashlyticsCore: No reports found.

最佳答案

我遇到了同样的问题,Crashlytics 不报告事件趋势,也不报告 PROD 构建中的崩溃堆栈跟踪。问题出在 Proguard 配置中。听起来很愚蠢,但在 Google 的所有文档中根本没有提到 Proguard。在这里您可以找到我必须添加的内容才能使其正常工作:

# Firebase
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

我希望这对您和其他许多人有所帮助,我已经花了一周时间调试和尝试我能想到的任何事情。

关于android - Firebase Crashlytics 不报告崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53325836/

相关文章:

带有广播接收器的 Android Alarm Manager 在代码中而不是 list 中注册

android - 具有相同返回类但不同键的多个@Bind

android - Crashlytics 缺少一些自定义日志

android - 在构建服务器上使用 APKTool 的 Crashlytics

java - 如何读取同一节点下多种数据类型的firebase数据库?

ios - 子类 Crashlytics

android - IMX6 板上使用 Android 的 Zigbee 控制应用程序

java - 如何修复底部按钮上的软键盘重叠?

Firebase 自动生成的 UID 更改了吗?

javascript - 在Firebase中使用值过滤后获取键的值