Resolve Manifest Merger Failed错误 - 工具:替换

时间:2017-04-19 20:21:50

标签: android android-gradle android-manifest

Android支持库版本25.3.1和26.0.0-alpha1上的冲突导致执行Gradle同步时出现清单合并失败错误。

我们如何在工具中使用标记:替换属性,因为Android Studio / gradle建议修复此错误?

(即AndroidManifest.xml中强制使用支持的确切语法是什么:设计:25.3.1而不是包含的库正在使用的26.0.0-alpha1)

这是Gradle产生的错误:

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.0-alpha1) from [com.android.support:support-v4:26.0.0-alpha1] AndroidManifest.xml:27:9-38
    is also present at [com.android.support:design:25.3.1] AndroidManifest.xml:27:9-31 value=(25.3.1).
    Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:25:5-27:41 to override.

2 个答案:

答案 0 :(得分:9)

将以下内容添加到build.gradle&#34; app level&#34;,就在依赖项之后:

configurations.all {
resolutionStrategy.eachDependency { details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.3.1'
}
}
}
}

答案 1 :(得分:0)

app:gradle 文件中,替换

'com.android.support:design:25.3.1' 

'com.android.support:design:26.+'