我已成功将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/' } } }
并添加到应用gradle文件中:
apply plugin: 'io.fabric' dependencies { // ... implementation 'com.google.firebase:firebase-core:16.0.5' implementation 'com.crashlytics.sdk.android:crashlytics:2.9.6' }
感谢您的想法
更新
启用Crashlytics调试日志会显示崩溃已被捕获并报告,但在项目的Firebase Crashlytics仪表板中仍然没有显示任何内容
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.
答案 0 :(得分:1)
我遇到了同样的问题,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.**
我希望这对您和其他许多人有帮助,我花了一周的时间进行调试,并尝试我想象中的一切。
答案 1 :(得分:0)
您是否还向主要活动的onCreate添加了Fabric.with(this, Crashlytics())
?
答案 2 :(得分:0)