Android Studio uggestion add 'tools replace="android theme" 问题


项目中开发了一个库以供其他模块引用,完成后运行报如下问题:

Suggestion: add 'tools:replace="android:theme"' to <application> element at AndroidManifest.xml:8:5-23:19 to override.

网上搜索了资料,原因大致如下:

AS的Gradle插件默认会启用Manifest Merger Tool,若Library项目中也定义了与主项目相同的属性(例如默认生成的android:icon和android:theme),则此时会合并失败,并报上面的错误。

解决方式为:在Manifest.xml的application标签下添加tools:replace=”android:icon, android:theme”(多个属性用,隔开,并且记住在manifest根标签上加入xmlns:tools=”http://schemas.android.com/tools",否则会找不到namespace哦)

然而我加上之后并没有预想的效果,不造为什么,最后用了一个变通的方式:将主题加在Activity上,同时还必须去掉application标签主题引用。运行不在报错。

记录一下如果以后有更好的解决方式在更新。


文章作者:
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 !
 上一篇
Android中 aar 文件的日常使用 Android中 aar 文件的日常使用
在开发中遇到好用的开源库内心总是激动的,但是如果因为“网络问题”无法通过compile命令引用内心又是崩溃的,这个时候aar文件对于我们来说就是非常好的选择。 什么是aar在Java开发中库的形式一般会以jar包的形式提供,但是jar包
2017-03-29
下一篇 
Ripple(波纹)和Palette(调色板)了解 Ripple(波纹)和Palette(调色板)了解
ripple 水波纹5.0之后按钮会自带水波纹效果,但是颜色是固定的。而且如果给按钮设置了背景后,水波纹效果就没了如何给按钮添加自己想要的背景,还要有水波纹效果,还要能够定义水波纹颜色呢?首先创建正常的背景xml文件: 然后在res下
2017-03-13
  目录