由于下载了最新的SDK并安装了Android Studio,我的项目无法构建。我得到了以下信息:

Error:Gradle: Execution failed for task ':SampleProject:processProdDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version L declared in library com.android.support:support-v4:21.0.0-rc1

当前回答

解决方案1:

将uses-sdk更改为<uses-sdk tools:node="replace" />并添加xmlns:tools="http://schemas.android.com/tools" 在AndroidManifest.xml

 <?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="com.demo.android"
    android:versionCode="16"
    android:versionName="3.3.1">
    .
    .
    <uses-sdk tools:node="replace" />
    .
    .
</manifest>

确保你使用gradle 0.11及以上版本来使用Manifest合并。

解决方案2:

更改compile 'com.android。Support: Support -v4:+' to compile 'com.android.support: Support -v4:20。+'在build.gradle中。这将阻止gradle使用 v4:21.0.0,需要版本L。 然而,如果你的任何外部依赖使用相同的。您可能需要等待他们更新相同的内容。

解决方案3:

删除/注释<version>21.0.0-rc1</version>在你的文件<android-sdk>/extras/android/m2repository/com/android/support-v4/maven-metadata.xml 对support-v7重复相同的操作

其他回答

别忘了,你应该编辑构建。Gradle在项目的“app”子文件夹中,而不是在项目的文件夹中。为了解决版本L的问题,我浪费了一天的工作时间。

加上上面的正确答案,由于库嵌套,问题仍然可能发生。在这种情况下,尝试如下面的例子:

compile 'com.android.support:support-v4:20.+'
compile ('com.github.chrisbanes.actionbarpulltorefresh:extra-abs:+') { // example
    exclude group: 'com.android.support', module:'support-v4'
    exclude group: 'com.android.support', module:'appcompat-v7'
}

唯一对我有用的是:

在项目。属性,我改变:

cordova.system.library.1 = com.android.support: support-v4: + 来 cordova.system.library.1 = com.android.support: support-v4:20。+

谢谢@Murtuza。你的回答帮助我解决了我的问题,但对我来说

编译的com.android.support: support-v13:19。+ also, along with

编译“com.android.support: support-v4:19 +”。 编译“com.android.support: appcompat-v7:19 +”。

从 编译的com.android.support: support-v4: + 编译的com.android.support: support-v7: + 编译的com.android.support: support-v13: + 希望这能帮助到一些人

对我来说,这样的问题可以通过改变

minSdkVersion 14

在构建中。Gladdle文件,并使用错误消息中指定的

但问题是

Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 15 declared in library

所以我把14改成了15。Gladdle文件,它工作

试一试。