我正在尝试将可穿戴模块添加到我现有的 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
在你的 gradle 文件中只需将 minSdkVersion 更新为 23
android {
compileSdkVersion 30
defaultConfig {
applicationId "com.oaics.customer"
minSdkVersion 23
targetSdkVersion 30
versionCode 1
versionName "1.0"
}
如果是 Ionic 项目
preference name="android-minSdkVersion" value="19"
在 Config.xml(项目目录)文件中将上述字段设置为所需的版本。
我让它发挥作用的唯一方法是:
ionic cordova platform rm android
更新 Ionic 项目根目录下的 config.xml 文件:from
<preference name="android-minSdkVersion" value="16" />
到
<preference name="android-minSdkVersion" value="19" />
我假设对于OP的情况,该值应该是25而不是19(在我的例子中错误是19)。
ionic cordova platform add android
然后准备和构建 - 不应再返回相同的错误。
您可以在文件 build.gradle 中更改它,这对我有用。
defaultConfig {
minSdkVersion 21
targetSdkVersion 33
}
这似乎是 Gradle 问题,因为你的“可穿戴”模块具有最小
23
sdk,而不是 25。
另请检查该模块的
AndroidManifest.xml
,因为它可能包含带有“25”的 uses-sdk:minSdkVersion
。
如果没有值,您可以添加它来覆盖Gradle配置值。
希望能有所帮助。
我在使用 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"
调整版本并享受!
清单合并失败:uses-sdk:minSdkVersion 16 不能小于库 [androidx.lifecycle:lifecycle-runtime-ktx:2.7.0] C:\Users\lenovo.gradl 中声明的版本 19