1、只支持 AndroidX 库,不再支持 Android Support 库
2、支持自定义协议加载本地html文件
<preference name="scheme" value="https" /> <!--一般设为http/https,默认https,可以设置其他值但不推荐-->
<preference name="hostname" value="localhost" /><!--默认localhost,可以设置其他值但不推荐-->
在以前,本地html是用 file:///android_asset/www/index.html
加载并显示的
但是随着 webview 安全性越来越严格,file://
加载的页面会遇到各种限制,比如不能调用 navigator.mediaDevices.getUserMedia
(需要安全域名,比如https://或localhost),再比如请求跨域问题。
于是官方提供了自定义协议的方式加载本地html。
注意:旧的项目,如果使用cordova-android@10.x,将自动配置成这个自定义协议的方式 https://localhost
,将导致app内的localStorage,cookies,web数据库等全部丢失(因为这些数据是基于网页协议而分开存储的)
如果想维持以前的 file://
,可以加上下面的配置
<preference name="AndroidInsecureFileModeEnabled" value="true" />
3、工具和默认支持版本
Target SDK: 30
SDK Build Tool: 30.0.3
Gradle: 7.1.1
Kotlin: 1.5.20
Android Gradle Plugin (AGP): 4.2.2
Google Services Gradle Plugin: 4.3.5