为什么gradle错误地覆盖了AndroidManifest.xml?

为什么gradle错误地覆盖了AndroidManifest.xml?,android,gradle,android-studio,android-manifest,Android,Gradle,Android Studio,Android Manifest,我正在gradle的android studio项目中使用support-v4库 在我的应用程序目录中,build.gradle文件包含以下代码: android { compileSdkVersion 20 buildToolsVersion '20.0.0' defaultConfig { applicationId "app.package.name" minSdkVersion 11 targetSdkVersion 20 }.... 当我尝试构建这个项目时,

我正在gradle的android studio项目中使用support-v4库

在我的应用程序目录中,build.gradle文件包含以下代码:

android {
compileSdkVersion 20
buildToolsVersion '20.0.0'

defaultConfig {
    applicationId "app.package.name"
    minSdkVersion 11
    targetSdkVersion 20
}....
当我尝试构建这个项目时,在/build/…中的support-v4目录中的AndroidManifest.xml。。。更新后,其uses sdk标记变为:

<uses-sdk
    android:minSdkVersion="L"
    android:targetSdkVersion="L" />
然后我得到这个信息:

错误:任务“:app:processDebugManifest”的执行失败。 清单合并失败:使用sdk:MinsdkVersion11不能小于库com.android中声明的版本L。支持:support-v4:21.0.0-rc1


为什么会发生这种情况,以及如何在build.gradle中保留配置的同时让我的项目进行构建?

看来,作为依赖项的支持库的最新版本可能存在问题

我通过更改build.gradle依赖项中的support-v4版本修复了此问题:

compile 'com.android.support:support-v4:+'


记住每隔+20更新一次。像appcompat等。你知道我为什么要这样做吗?不完全确定,但我相信21以后至少需要版本L,所以将它改回将允许你有一个较低的min sdk版本?可能是sdk版本4.21以后的版本中的某些内容。。
compile 'com.android.support:support-v4:20'