Apache Cordova Android 4.0.0
2015年4月15日
我们很高兴地宣布 Cordova Android 4.0.0
已发布!
此版本添加了重要的功能,并引入了一些重大更改。最重要的是,它为 Crosswalk 提供了头等支持 —— 一个捆绑的现代 WebView!
cordova-android@4.0.0
将是下一版 cordova
中的默认 android 版本。如果您迫不及待,可以立即尝试一下
cd my_project
cordova platform update android@4.0.0
cordova plugin add https://github.com/apache/cordova-plugin-whitelist.git#r1.0.0
# To install Crosswalk (optional):
cordova plugin add https://github.com/MobileChromeApps/cordova-plugin-crosswalk-webview.git#1.0.0
主要变更
- 支持可插拔的 WebViews!
- 可以通过安装 cordova-plugin-crosswalk-webview 插件来添加 Crosswalk。
- 启动画面功能现在通过插件提供
- 您需要添加新的 cordova-plugin-splashscreen 插件才能继续使用启动画面
- 白名单功能已改进
- 您需要添加新的 cordova-plugin-whitelist 插件才能继续使用白名单
- 现在支持设置内容安全策略(CSP),这是推荐的白名单方式(详见插件的自述文件)
- 默认情况下,如果没有此插件,网络请求将被阻止,因此即使允许所有请求,即使您正在使用 CSP,也需要安装此插件。
- 这个新的白名单经过增强,更加安全和可配置,但仍然可以通过单独的插件获得传统的白名单行为(不推荐)。
- 注意:虽然不完全属于此版本的一部分,但 cordova-cli 创建的最新默认应用程序将默认包含此插件。
插件开发人员的变更
- 在 Android Studio 中开发
- 现在完全支持 Android Studio,并推荐使用它而不是 Eclipse
- 使用
cordova plugin add ../path/to/my-plugin --link
来为开发 symlink .java 文件
- 使用 Gradle 构建
- 所有构建默认使用 Gradle,而不是 Ant
- 插件可以添加它们自己的 gradle 构建步骤!
- 插件可以使用
<framework>
标签依赖 Maven 库
- 新的 API:
onStart
、onStop
、onConfigurationChanged
"onScrollChanged"
消息已删除。请改用view.getViewTreeObserver().addOnScrollChangedListener(...)
- CB-8702 为插件提供新的 API,以使用流覆盖
shouldInterceptRequest
其他变更
- CB-8378 删除了
hidekeyboard
和showkeyboard
事件(应用程序应该使用插件代替) - CB-8735
bin/create
正则表达式放松 / 更好地支持数字 - CB-8699 修复 CordovaResourceApi
copyResource
在 src= 未压缩的资源时创建零长度文件的问题 - CB-8693 CordovaLib 不应包含图标/启动画面
- CB-8592 修复在调用
init()
之前生命周期事件到达 CordovaWebView 时出现的 NPE - CB-8588 为来自 showWebPage openExternal=true 的 intent 添加 CATEGORY_BROWSABLE
- CB-8587 不允许在 showWebPage 中进行未列入白名单的 WebView 导航
- CB-7827 为
bin/create
添加--activity-name
- CB-8548 在存在 debug-signing.properties 和 release-signing.properties 时使用它们
- CB-8545 不要将布局添加为 WebView 的父级
- CB-7159 当
<html style="opacity:0">
时,以及在屏幕旋转期间,不使用 BackgroundColor - CB-6630 从核心库中删除了 OkHttp。它现在可以作为插件使用:cordova-plugin-okhttp
- CB-8484 支持为 Android 创建签名存档