Firebase Crashlytics未显示崩溃报告问题求助
Firebase Crashlytics 无崩溃记录排查方案
确认Crashlytics初始化配置
检查应用启动入口(如Application类)是否完成初始化,且开启崩溃收集:// Kotlin示例 FirebaseApp.initializeApp(this) FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)Debug模式下默认可能关闭收集,可在
AndroidManifest.xml中强制开启:<meta-data android:name="firebase_crashlytics_collection_enabled" android:value="true" />排查自定义异常拦截逻辑
若项目有自定义UncaughtExceptionHandler,需确保将异常传递给Crashlytics:// Java示例 Thread.UncaughtExceptionHandler defaultHandler = Thread.getDefaultUncaughtExceptionHandler(); Thread.setDefaultUncaughtExceptionHandler((thread, throwable) -> { FirebaseCrashlytics.getInstance().recordException(throwable); defaultHandler.uncaughtException(thread, throwable); });验证配置文件一致性
重新下载Firebase控制台的google-services.json,确认文件内的包名与当前项目完全匹配,替换后执行清理项目+完整重建操作。检查崩溃上传状态
触发崩溃后需完全重启应用,通过Logcat搜索Crashlytics关键词,确认是否有上传日志:Crashlytics: Crashlytics report upload complete: [报告ID]
若出现上传失败提示,排查设备网络连接或应用网络权限。手动触发测试崩溃
不要依赖自然崩溃,添加测试代码主动触发:findViewById<Button>(R.id.test_crash_btn).setOnClickListener { throw NullPointerException("Test Crash for Firebase Crashlytics") }触发后重启应用,等待10-30分钟再查看控制台(数据存在延迟)。
确认权限与混淆规则
确保当前登录用户拥有Firebase Crashlytics Viewer及以上权限;若启用ProGuard/R8,需添加混淆规则避免日志解析失败:-keep class com.google.firebase.crashlytics.** { *; } -keepattributes SourceFile,LineNumberTable
内容的提问来源于stack exchange,提问作者PnmaAndro
相关产品推荐
相关产品推荐

