清单合并失败[INSTALL_FAILED_OLDER_SDK]失败:uses-sdk:minSdkVersion 15不能小于版本L

时间:2014-07-03 06:17:38

标签: android android-studio android-gradle build.gradle android-5.0-lollipop

最近我收到了这个错误。

Manifest merger failed : uses-sdk:minSdkVersion 11 cannot be smaller than version L

所以我把它改成了

  minSdkVersion 'L'

然后我收到了这个错误

失败[INSTALL_FAILED_OLDER_SDK]

所以我想我没有正确解决第一个错误。

我不确定该怎么做。我一直在关注这个:

Manifest merger failed : uses-sdk:minSdkVersion 10 cannot be smaller than version L declared in library com.android.support:appcompat-v7:21.0.0-rc1

Manifest merger failed : uses-sdk:minSdkVersion 14

http://www.reddit.com/r/androiddev/comments/297xli/howto_use_the_v21_support_libs_on_older_versions/

但奇怪的是没有运气。

这就是我所拥有的:

   apply plugin: 'android'

android {
    compileSdkVersion 21
    buildToolsVersion '20.0.0'
    defaultConfig {
        applicationId 'com.spicycurryman.getdisciplined10.app'
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName '1.0'
    }


    buildTypes {
        debug {
            applicationIdSuffix '.dev'
        }
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.+'
    compile project(':seekArc_library')
}

编辑: 这就是我现在使用的

新版本:

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'
    defaultConfig {
        applicationId 'com.spicycurryman.getdisciplined10.app'
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName '1.0'
    }


    buildTypes {
        debug {
            applicationIdSuffix '.dev'
        }
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:19.1.+'
    compile 'com.android.support:support-v4:19.1.+'
    compile project(':seekArc_library')

}

不幸的是,这也行不通。我不确定为什么没有编译指定的版本。

2 个答案:

答案 0 :(得分:0)

您正在部署应用程序的设备或模拟器似乎正在运行一个早于" L"的Android版本。要么使用" L"模拟器或更改你的" build.gradle"文件要求较低的版本(即更改" targetSdkVersion"" compileSdkVersion"更低的版本)。

答案 1 :(得分:0)

我发现为了强制我的编译器编译指定的版本,我需要包含以下内容:

configurations.all {
    resolutionStrategy {
        force 'com.android.support:support-v4:20.+'
        force 'com.android.support:appcompat-v7:20.+'
    }
}

似乎是新Android L预览更新的错误。