使用Cordova构建特定Android 8.1版本应用失败求助
解决仅适配Android 8.1(API27)的Cordova应用编译错误
问题背景
需开发一款仅适配Android 8.1的应用,已在config.xml中设置compileSdkVersion和targetSdkVersion为27,移除并重新添加过Android平台,但编译时出现大量依赖库要求更高API版本的错误。
已尝试的配置
config.xml相关配置:
<platform name="android"> <preference name="android-compileSdkVersion" value="27" /> <preference name="android-targetSdkVersion" value="27" /> </platform>
build.gradle为Cordova自动生成代码,未手动修改。
错误原因
当前使用的Cordova Android版本过高(如11.x及以上),这类版本依赖的AndroidX库已将最低编译API版本要求提升至33,即使在config.xml中指定API27,依赖库本身不兼容该版本,导致编译失败。
解决方案
1. 降级Cordova Android平台版本
选择兼容API27的Cordova Android版本,推荐使用8.1.0:
# 移除当前Android平台 cordova platform remove android # 安装指定版本的Android平台 cordova platform add android@8.1.0
2. 完善config.xml配置
强制锁定所有SDK版本为27,确保仅适配Android 8.1:
<platform name="android"> <preference name="android-compileSdkVersion" value="27" /> <preference name="android-targetSdkVersion" value="27" /> <preference name="android-minSdkVersion" value="27" /> <preference name="android-maxSdkVersion" value="27" /> </platform>
3. 检查插件兼容性
确保项目中使用的Cordova插件均支持API27,避免引入依赖高版本API的插件。若发现插件导致冲突,可降级插件至兼容版本。
内容的提问来源于stack exchange,提问作者Somecode
相关产品推荐
相关产品推荐

