You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android应用Crashlytics无法上报崩溃报告问题求助

Crashlytics无法上报崩溃(Settings are unavailable)问题排查方案

我来帮你搞定这个上报失败的问题,这个错误大多和初始化配置、后台设置或者权限有关,咱们一步步来排查:

1. 修复初始化代码的核心配置

你当前的初始化代码没有明确启用Crashlytics的上报功能,默认可能处于禁用状态。试试修改成下面的代码,强制开启核心上报能力:

// 在Application的onCreate()最开始执行初始化
CrashlyticsCore core = new CrashlyticsCore.Builder()
    .disabled(false) // 强制启用,即使debug模式也能测试上报
    .build();
Fabric.with(context, new Crashlytics.Builder().core(core).build());

注意一定要把这段代码放在Application类的onCreate()方法最开头,避免其他代码先崩溃导致Crashlytics还没初始化完成。

2. 验证后台配置的一致性

  • 确认你的应用包名和Firebase/Fabric后台注册的包名完全一致,大小写、后缀都不能出错
  • 检查google-services.json(Firebase集成)或fabric.properties文件是否正确放在项目根目录,文件里的API密钥、应用ID要和后台配置完全匹配
  • 如果是从Fabric迁移到Firebase,必须确保完成了完整的迁移流程,后台配置已经同步更新

3. 检查网络权限与环境

  • 应用需要网络才能上报崩溃,确认AndroidManifest.xml里添加了必要权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  • 如果测试设备在代理环境下,要确保代理允许访问Crashlytics的服务器地址,或者暂时关闭代理再测试上报

4. 开启debug模式的上报测试

默认debug模式可能会关闭Crashlytics,你可以在build.gradle里强制开启,方便测试:

android {
    buildTypes {
        debug {
            ext.enableCrashlytics = true
            // 可选:开启调试日志,方便排查细节
            manifestPlaceholders = [crashlyticsDebugEnabled: "true"]
        }
    }
}

然后手动触发一个崩溃测试,比如在按钮点击事件里加throw new RuntimeException("Test Crash for Crashlytics");,重启应用后查看后台是否收到报告。

5. 清理缓存与重新构建

  • 清理Android Studio缓存:File -> Invalidate Caches... -> 选择Invalidate and Restart
  • 删除app/build目录,重新构建项目
  • 卸载设备上的旧应用,重新安装新版本

内容的提问来源于stack exchange,提问作者Sourav Nag

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:30:00