在cordova开发app时,有时需要弄清手机android版本、android SDK版本和cordova-android版本之间的关系。
对于不同的手机android版本,cordova的编译和运行会由于版本不匹配而失败。
当手机正确连机并打开开发者模式,但运行时出现类似提示:
Failed to install apk to device或者Failed to install apk to target…
应检查版本对应关系。
查询版本
查询最新版本的对应关系可以到官网:
https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html
如图:
- 特别注意:2021年12月,cordova-android Version已更新到10.X.X版本,并且10.X.X以后版本可支持JDK11,此前版本根据Equivalent Android Version安装对应支持JDK版本,建议用JDK8
- 2023年8月更新到cordova-android version 12,建议JDK11(官方建议)或JDK17
上述分别对应了所需要的cordova-android version、SDK manager中的API Levels和所需JDK。
对于手机设备上看到的android版本号,可根据SDK manager中的前面版本查到对应的API-level。例如:下图是sdk manager中的API Levels,手机版本若为Android4.2.2则对应需要API 17,最高可用Cordova-android version 6.X.X,JDK8。
安装指定的cordova-android版本
根据手机android版本需要查询和安装指定的cordova-android版本。
显示最新cordova-android命令:
在cmd命令窗口执行:
npm view cordova-android
可以用通配符,查询所需版本。
例如:要显示所有7.X.X版本,用如下命令:
npm view cordova-android@7.*
显示特定版本8.0.0,用如下命令:
npm view cordova-android@8.0.0
安装指定版本,命令如下:
cordova platform add android@^7.1.4
其他cordova platform命令参考:
对于升级后和需要特定版本的处理,上述方法同样适用。