Manifest merger failed : Attribute application@label value=(@string/app_name)

时间:2022-03-14 07:25:44

使用android studio开发过程中,新建了A、B两个工程,其中B是库工程,工程A引用库工程B,编译过程中出现:Manifest merger failed : Attribute application@label value=(@string/app_name),从log看,导致该错误的原因是工程A和工程B中的AndroidManifest.xml文件中都使用了app name,合并manifest的过程出现了问题。

根据studio的suggestion:在A工程中的AndroidManifest.xml中加上以下两行:

xmlns:tools="http://schemas.android.com/tools"
tools:replace="android:label"
下面是A工程的AndroidManifest.xml片段:
 
<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.xx.xx"
    android:versionCode="74"
    android:versionName="v3.4.1.1604071200" >

   <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="19"/>
    <application
        android:name="com.tc.cloud.McldApp"
        android:persistent="true"
        android:theme="@android:style/Theme.NoTitleBar"
        android:icon="@drawable/icon"
        android:allowBackup="false"
        android:supportsRtl="true"
        android:label="@string/mcs_app_name"
        tools:replace="android:label"
 
B工程的AndroidManifest.xml片段:
 
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="xx.xx.mylibrary">

    <application
        android:allowBackup="false"
        android:label="@string/app_name"
        android:supportsRtl="true">

    </application>

</manifest>



重新编译后,错误消失。