【问题标题】:Android Studio Manifest merger failed minSdkVersion ErrorAndroid Studio Manifest 合并失败 minSdkVersion 错误
【发布时间】:2014-12-17 12:32:03
【问题描述】:

我正在尝试在我的应用程序中添加一个依赖项,该依赖项的最低 sdk 版本比我的应用程序更新,所以我收到以下错误

错误:任务 ':app:processDebugManifest' 执行失败。

清单合并失败:uses-sdk:minSdkVersion 9 不能小于库中声明的版本 14 建议:使用 tools:overrideLibrary="com.nononsenseapps.filepicker" 强制使用

但我不知道在哪里添加该建议以便我可以构建它。 这就是我的 build.gradle(Module: app) 现在的样子

apply plugin: 'com.android.application'

android {
compileSdkVersion 21
buildToolsVersion "21.1.2"

defaultConfig {
    applicationId "com.codedspycamera.android"
    minSdkVersion 9
    targetSdkVersion 21
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile 'com.nononsenseapps:filepicker:+'
compile 'com.squareup.picasso:picasso:2.4.0'


}

【问题讨论】:

  • 制作minsdkversion 14
  • 无法成功,因为我在代码中处理不同的 android 版本以使其与旧的 android 版本兼容。
  • com.nononsenseapps:filepicker 的 minSdkVersion 为 14。所以要么将 minSdkVersion 更改为 14,要么删除 com.nononsenseapps:filepicker 并尝试其他支持 minSdkVersion 9 的类似库。
  • 你是如何将库添加为模块或 jar 的

标签: android android-gradle-plugin build.gradle


【解决方案1】:

com.nononsenseapps.filepicker 仅适用于 >=14 版本的安卓设备。我认为如果你强制它在 Read this for more information.

【讨论】:

    【解决方案2】:

    只是为了让每个人的答案更清楚,这是你必须做的

    工具:覆盖库标记

    一个特殊标记,只能与 uses-sdk 声明一起使用,以覆盖导入最低 SDK 版本比该应用程序的最低 SDK 版本更新的库。 如果没有这样的标记,清单合并将失败。该标记将允许用户选择可以导入哪些库而忽略最低 SDK 版本。

    例如,在主要的 android 清单中:

     <uses-sdk android:targetSdkVersion="14" android:minSdkVersion="2"
              tools:overrideLibrary="com.example.lib1, com.example.lib2"/>
    

    将允许导入具有以下清单的库而不会出错:

     <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.lib1">
        <uses-sdk android:minSdkVersion="4" />
    </manifest> 
    

    请注意,如果添加了多个库,则它们必须用逗号“,”分隔

    【讨论】:

      【解决方案3】:

      对于离子开发人员

      config.xml - 添加 -

       <preference name="android-minSdkVersion" value="19" />
      

      bundle.gradle - 添加

      configurations.all {
          resolutionStrategy {
              force 'com.android.support:support-v4:27.1.0'
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2017-03-13
        • 1970-01-01
        • 2015-09-12
        • 1970-01-01
        • 1970-01-01
        • 2020-01-03
        • 2017-05-30
        • 1970-01-01
        相关资源
        最近更新 更多