当前位置: 安卓之星 -> 安卓开发 -> Studio uggestion: add ‘tools:replace=”android:theme”

Studio uggestion: add ‘tools:replace=”android:theme”

作者:网络 发表于: 2016-09-15 点击: 588 次

Error:(26, 9) Attribute [email protected] value=(@drawable/logo) from AndroidManifest.xml:26:9

Error:(28, 9) Attribute [email protected] value=(@style/ThemeActionBar) from AndroidManifest.xml:28:9
is also present at XXXX-trunk:XXXXLib:unspecified:15:9 value=(@style/AppTheme)
Suggestion: add ‘tools:replace=”android:theme”‘ to <application> element at AndroidManifest.xml:24:5 to override
Error:Execution failed for task ‘:XXXX:processDebugManifest’.
> Manifest merger failed with multiple errors, see logs

‘tools:replace=”android:theme”
‘tools:replace=”android:label”
‘tools:replace=”android:icon”

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

解决方法有以下2种:
方法1:在Manifest.xml的application标签下添加tools:replace=”android:icon, android:theme”(多个属性用,隔开,并且记住在manifest根标签上加入xmlns:tools=”http://schemas.android.com/tools”,否则会找不到namespace哦)
方法2:在build.gradle根标签上加上useOldManifestMerger true 这方法有的版本不适用

参考官方介绍:
http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger

相关文章

相关文章

赶快留言冒泡

  • 评论 (0)
  • 引用通告 (0)
目前还没有任何评论.
目前还没有任何Trackbacks和Pingbacks.
吐个泡浮上去.