清单合并失败:uses-sdk:minSdkVersion 16 不能小于库 [Wear App 子清单] 中声明的版本 25

问题描述 投票:0回答:7

我正在尝试将可穿戴模块添加到我现有的 Android(最小 sdk 版本 16)应用程序中。 如果我运行应用程序(发布模式),我会收到此错误:

错误:任务“:app:processReleaseManifest”执行失败。 清单合并失败:uses-sdk:minSdkVersion 16 不能更小 高于库 [Wear App 子清单] 中声明的版本 25 c:\workspaces\sampleapp ndroid pp uild\ generated\manifests\microapk 释放\AndroidManifest.xml 建议:使用tools:overrideLibrary=""强制使用

我不想增加minSdkVersion。 那么如何在不更改应用程序的 minSdkVersion 的情况下解决该问题?

这是我的 gradle 文件:

手机应用程序

apply plugin: 'com.android.application'

android {
    signingConfigs {
        config {
            [...]
        }
    }

    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    repositories {
        jcenter()
        maven {
            url "https://maven.java.net/content/groups/public/"
        }
    }
    defaultConfig {
        applicationId "com.sample.app"
        minSdkVersion 16
        targetSdkVersion 25
        signingConfig signingConfigs.config
    }
    buildTypes {
        release {
            debuggable true
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            debuggable true
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:25.2.0'
    compile 'com.android.support:design:25.2.0'
    [...]

    compile 'com.google.android.gms:play-services-wearable:10.2.0'
    wearApp project(':sample-wear')
}

apply plugin: 'com.google.gms.google-services'

可穿戴应用程序

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    signingConfigs {
        config {
            [...]
        }
    }

    defaultConfig {
        applicationId "com.sample.app"
        minSdkVersion 23
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        signingConfig signingConfigs.config
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.google.android.support:wearable:2.0.0'
    compile 'com.google.android.gms:play-services-wearable:10.2.0'
    provided 'com.google.android.wearable:wearable:2.0.0'
}

注意:仅 Gradle 2.3.0 才会出现该错误。 Gradle 2.2.3 按预期工作...

code.google.com 上的类似问题:https://code.google.com/p/android/issues/detail?id=232834

android android-gradle-plugin wear-os
7个回答
6
投票

在你的 gradle 文件中只需将 minSdkVersion 更新为 23

android {
compileSdkVersion 30
defaultConfig {
    applicationId "com.oaics.customer"
    minSdkVersion 23
    targetSdkVersion 30
    versionCode 1
    versionName "1.0"
}

2
投票

如果是 Ionic 项目

preference name="android-minSdkVersion" value="19"

在 Config.xml(项目目录)文件中将上述字段设置为所需的版本。


1
投票

我让它发挥作用的唯一方法是:

  1. 卸载android平台:
    ionic cordova platform rm android
  2. 更新 Ionic 项目根目录下的 config.xml 文件:from

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

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

我假设对于OP的情况,该值应该是25而不是19(在我的例子中错误是19)。

  1. 再次将android平台添加到项目中:
    ionic cordova platform add android

然后准备和构建 - 不应再返回相同的错误。


1
投票

您可以在文件 build.gradle 中更改它,这对我有用。

defaultConfig {
    minSdkVersion 21
    targetSdkVersion 33
}

0
投票

这似乎是 Gradle 问题,因为你的“可穿戴”模块具有最小

23
sdk,而不是 25。

另请检查该模块的

AndroidManifest.xml
,因为它可能包含带有“25”的
uses-sdk:minSdkVersion

如果没有值,您可以添加它来覆盖Gradle配置值。

希望能有所帮助。


0
投票

我在使用 IONIC 和 CORDOVA 平台时遇到了同样的问题。我通过以下方法解决了这个问题:

检查两个文件:

[folder_your_app]\platforms\android\app\src\main\AndroidManifest.xml

例如:

\Users\[your_user]\.gradle\caches\transforms-1\files-1.1\tbxml-android.aar\f0d6a971caeb6d952bf6b9b62464f2ab\AndroidManifest.xml

在第一个文件中检查以下行:

uses-sdk android:minSdkVersion="16" android:targetSdkVersion="26"

并与第二个文件的以下行进行比较:

android:minSdkVersion="16"

调整版本并享受!


0
投票

清单合并失败:uses-sdk:minSdkVersion 16 不能小于库 [androidx.lifecycle:lifecycle-runtime-ktx:2.7.0] C:\Users\lenovo.gradl 中声明的版本 19

© www.soinside.com 2019 - 2024. All rights reserved.