cordova android 更新 compileSDK 版本

问题描述

我是使用 cordova-android 构建 android 应用程序的新手。

在项目根目录的 config.xml 中更新 compileSdkVersion/buildToolsversion 时遇到问题。

由于cordova-android version-9 支持api level 29,但是由于Android SDK API level 30 可用并且cordova-android 仍然不提供支持

我尝试在 config.xml 中更新首选项 compileSdkVersion/buildToolsversion,如下所示

<?xml version='1.0' encoding='utf-8'?>
我的第一个应用 测试应用 你的名字在这里

谁能帮我更新以上两个属性,以便可以使用最新的 SDK API 级别 30 构建 apk。

解决方法

基于 Cordova requirements and support,当前 cordova-android@9 支持 API 级别 29 及以下。我们可以预期下一版本 cordova-android@10 可能会面向 API 级别 30,并且可能需要等待 Cordova 团队的正式更新。 enter image description here

在那之前我们可以玩转npm中的nightly version of cordova-android@10

根据Google最近的截止日期,

2021 年 8 月 - 新应用必须至少面向 Android 11(API 级别 30)

2021 年 11 月 - 现有应用必须至少面向 Android 11 (API 级别 30) 用于新的应用更新

所以我们可以等到八月才能正式更新:)

解决方法:
(可能有效,也可能无效。在实际应用中实现之前,先在示例应用中使用它)

更改 config.xml 上的 android-targetSdkVersion

<preference name="android-targetSdkVersion" value="30" />

使用删除平台

cordova platform remove android

然后添加最新的 cordova android 版本:

cordova platform add android@latest

构建项目:

cordova build android
,

在您的 config.xml 中添加/更新 targetSdk 版本至 30,如下所示。

<preference name="android-targetSdkVersion" value="30" />

以上命令会将 targetSdk 版本更改为 30

删除平台android并使用以下命令重新添加

cordova platform add android@10.0.0

以上命令会将 compileSdk 版本更新为 30。如果不执行此步骤,它将提供与您添加平台时可用的任何版本相同的值。

还要确保您安装了最新的 sdk 和构建工具,以便正确执行命令。