清单合并失败

时间:2017-08-14 08:25:36

标签: android

我曾尝试将recyclelerView添加到Android依赖项中,但在添加该库后会产生此错误

  

错误:任务':app:processDebugManifest'执行失败。 >清单合并失败:来自[com.android.support:appcompat-v7:25.3.1]的属性meta-data#android.support.VERSION@value value =(25.3.1)AndroidManifest.xml:27:9-31也是出现在[com.android.support:recyclerview-v7:26.0.0-alpha1] AndroidManifest.xml:24:9-38 value =(26.0.0-alpha1)。建议:添加'工具:replace =" android:value"'到AndroidManifest.xml:25:5-27:34的元素覆盖。

我已经通过项目结构

添加了它

3 个答案:

答案 0 :(得分:0)

将build.gradle(app)更改为

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    useLibrary 'org.apache.http.legacy'
    defaultConfig {
        applicationId "PACKAGE NAME"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:26.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:recyclerview-v7:26.+'
    compile 'com.android.support:cardview-v7:26.+'
    compile 'com.android.support:design:26.+'
    compile 'com.android.support:support-v4:26.+'
    testCompile 'junit:junit:4.12'
}

答案 1 :(得分:0)

当您包含对具有不同版本号的多个库或模块的引用时,会发生此错误。因此,请保持所有视图库版本号同步

答案 2 :(得分:0)

请确保所有支持库版本相同:

build.gradle项目级别而不是app/级别

中添加这些行
ext {
    supportLibrary = '26.0.0' // your support library version goes here
}

然后将其添加到项目级别,其中声明了所有Android依赖项:

implementation "com.android.support:appcompat-v7:${rootProject.supportLibrary}"

如果您使用的是某个元标记,请将AndroidManifest与此 类似。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="my.supercool.app">


    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        **tools:replace="android:value"**
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
</application>

...
</manifest>

工具替换实际上解决了覆盖元标记值的错误消息。