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

添加tools:node="replace"后Firebase Crashlytics无上报且清单合并冲突如何解决

解决方案
  • 首先移除主清单application节点上的全局配置tools:node="replace"与tools:node="merge"。全局替换规则会直接清除所有第三方库在application节点下自动注入的配置,Firebase Crashlytics需要的上报相关meta-data、服务配置会被直接覆盖,这是崩溃无法上报的核心原因。
  • 确认主清单根节点已声明tools命名空间,没有的话补充以下配置:
xmlns:tools="http://schemas.android.com/tools"
  • 针对冲突的属性逐个指定替换规则,不要全局操作application节点:
    1. 首先处理报错提示的allowBackup冲突,在application标签添加属性:
      tools:replace="android:allowBackup"
    2. 如果存在图标重复、应用名冲突的问题,把对应的冲突属性追加到tools:replace的属性列表中,多个属性用英文逗号分隔即可,示例如下:
      tools:replace="android:allowBackup,android:icon,android:roundIcon,android:label"
  • 后续如果出现其他属性合并冲突,只需按照报错提示的属性名,追加到上述tools:replace的列表中即可,无需修改全局配置。
  • 验证方案:构建完成后查看build/intermediates/merged_manifest目录下的最终合并清单,确认Firebase Crashlytics相关的配置(如com.google.firebase.crashlytics.mapping_file_id等meta-data)正常存在,触发测试崩溃检查上报是否正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 05:48:03