Android Studio常见问题 -- AndroidManifest.xml 覆盖问题

问题如下

D:source-codeAndroidStudioMyApplicationappsrcmainAndroidManifest.xml
Error:(14, 9) Attribute application@icon value=(@drawable/ic_launcher) from AndroidManifest.xml:14:9
Error:(14, 9) Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : Attribute application@icon value=(@drawable/ic_launcher) from AndroidManifest.xml:14:9
is also present at MyApplication:library:unspecified:18:9 value=(@drawable/icon)
Suggestion: add 'tools:replace="android:icon"' to <application> element at AndroidManifest.xml:12:5 to override

解决方法

在app的AndroidManifest.xml中做如下修改:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.leo.kang.demo"
    android:versionCode="1"
    android:versionName="1.0">

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        tools:replace="android:icon, android:theme">

注意两个地方:

1. 在manifest节点加上:xmlns:tools="http://schemas.android.com/tools"

2. 在application 节点加上tools:replace="android:icon, android:theme"

Reference

http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger

原文地址:https://www.cnblogs.com/kangyi/p/4409221.html