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

Android引入新库出现application@label属性重复构建报错如何解决

Android Manifest 合并时label属性冲突的解决方法

错误本质

Android构建过程会自动合并主项目、所有依赖库的AndroidManifest.xml文件,你引入的第三方库com.github.master在自身Manifest中声明了application@label属性,和主项目中定义的同名属性重复,合并规则无法判定优先使用哪个值,因此构建失败。

操作步骤

  • 打开主模块(通常为app模块)下的主Manifest文件,路径为app/src/main/AndroidManifest.xml
  • 在根节点<manifest>上补充tools命名空间声明,如果已经存在该声明可跳过这步:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="你自己的项目包名">
  • 找到文件中的<application>标签,添加tools:replace="android:label"属性,该配置的作用是告知Manifest合并工具:遇到android:label属性冲突时,优先使用主项目定义的值覆盖依赖库的配置,示例如下:
<application
    android:icon="@mipmap/ic_launcher"
    android:label="Compassion"
    tools:replace="android:label"
    android:theme="@style/Theme.YourApp">

    <!-- 原有Activity、Service等组件声明保持不变即可 -->

</application>
  • 如果你在debug源集下单独覆写了Manifest配置(对应路径app/src/debug/AndroidManifest.xml),且该文件里也定义了<application>标签,按照同样规则给该标签加上tools:replace="android:label"即可。

扩展说明

如果后续合并时还遇到其他属性冲突(比如android:icon、android:theme、android:allowBackup等),只需要在tools:replace后用逗号分隔多个属性名即可,例如:
tools:replace="android:label,android:icon,android:allowBackup"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 05:18:53