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等这些
网友评论