Manifest merger failed : Attribute application问题解决

1.在导入别人项目的时候,使用model依赖,报如下错误:
Manifest merger failed : Attribute application@icon value=(@mipmap/ic_launcher)
详情看图片


错误图片.jpg

2.分析错误提示,

主程序module清单文件中, application 节点的 android:icon 属性引用了 @mipmap/ic_launcher 图片资源,
而依赖module的清单文件中,同样的 android:icon 属性却引用了 @drawable/ic_launcher 这个图片资源,
两个属性值产生冲突,导致合并清单文件失败。

虽然知道错误是什么,但是仍然不知道咋解决啊。其实英语没那么糟糕,细心点的话,就能看到错误提示中就给出了解决问题的建议。

Suggestion: add ‘tools:replace=”android:icon”‘ to element at AndroidManifest.xml:5:5 to override

意思在 AndroidManifest.xml 文件的 <application> 节点中添加 tools:replace="android:icon" 属性。

3.解决方法

在项目的AndroidManifest.xml加入两句话:
一个是在<manifest节点加入;

xmlns:tools="http://schemas.android.com/tools"

一个是在<application节点加入:

tools:replace="android:icon"

如此rebuild一下就好。

4.我好奇查看所依赖的项目,发现根本无mipmap文件夹,只有drawble文件夹。于是我手动创建mipmap文件夹,放入图片ic_luncher,但无济于事。

5.另外如果这样导入仍发现有问题的话,可以尝试改改这个依赖的sdk版本,buildToolsVersion等这些

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容