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

Fabric Crashlytics迁移Firebase后无法上传崩溃日志

解决Fabric Crashlytics迁移Firebase后崩溃日志不上传的问题

嘿,我之前帮朋友排查过几乎一模一样的迁移问题,给你整理几个关键的排查方向,应该能解决你的问题:

  • 彻底清掉旧Fabric的残留痕迹
    这是最常见的坑!很多人迁移时只加了Firebase的依赖,没删干净旧Fabric的东西,导致冲突:

    • 删掉项目里的fabric.properties文件,这个是旧Fabric的配置文件,留着会干扰Firebase初始化
    • 检查根项目和app模块的build.gradle,把所有Fabric相关的classpath、插件和依赖全删掉,只保留Firebase Crashlytics的依赖,比如:
      // 只保留这个Firebase Crashlytics依赖(建议用最新版本)
      implementation 'com.google.firebase:firebase-crashlytics:29.0.0'
      
    • 打开AndroidManifest.xml,删掉所有Fabric相关的meta-data(比如原来的io.fabric.ApiKey)和多余权限
  • 换掉旧的崩溃测试代码
    你现在用的Crashlytics.getInstance().crash();是旧Fabric的API,迁移后要改用Firebase的版本:

    FirebaseCrashlytics.getInstance().crash();
    

    另外,现在Firebase Crashlytics默认是自动初始化的,不需要再手动调用Fabric.with()这类代码了,把旧的初始化代码也删掉吧

  • 排查网络相关的问题
    那个E/Fabric: Error performing auto configuration的Http异常,大概率是网络请求被拦了:

    • 确保App的AndroidManifest.xml里有这两个权限:
      <uses-permission android:name="android.permission.INTERNET" />
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
      
    • 如果测试时用了代理或者VPN,先关掉试试,很多代理会阻止Crashlytics的上传请求
    • 公司网络的防火墙也可能拦截,换个手机流量或者家里的网络测试
  • 确认Firebase控制台的配置

    • 先去Firebase控制台,进入你的项目→「质量」→「Crashlytics」,确认已经启用了这个服务(首次进入需要按照提示完成启用步骤)
    • 检查google-services.json文件是不是从Firebase控制台最新下载的,而且文件里的包名和你App的包名完全一致,一点拼写错误都不能有
  • 调整测试的姿势

    • 崩溃后别立刻重启App!给它个3-5秒的时间上传日志,有时候崩溃后进程直接被杀,来不及上传
    • 或者崩溃后手动重启App,Crashlytics会在下次启动时自动上传上次的崩溃日志
    • 另外,Firebase的日志不是实时的,最多可能等10分钟才会在控制台显示,别刚崩溃就急着去看
  • 看完整的异常堆栈
    把那个E/Fabric: Error performing auto configuration的完整堆栈信息打出来,看具体是啥错误:

    • 如果是401/403,那就是密钥或者项目配置不匹配,重新下载google-services.json试试
    • 如果是连接超时,那就是网络环境的问题,换个网络再测

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:04:14