部落格 RSS 訂閱

Apache Cordova Android 4.0.0
作者:Andrew Grieve
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-whitelist 外掛才能繼續使用白名單
    • 現在支援設定內容安全策略 (CSP),並且是建議的白名單方式(詳細資訊請參閱外掛的讀我檔案)
    • 在沒有此外掛的情況下,網路請求預設為封鎖,因此即使您要允許所有請求,或者即使您正在使用 CSP,也請安裝此外掛。
    • 這個新的白名單經過增強,更加安全且可配置,但舊版白名單行為仍然可以透過單獨的外掛使用(不建議)。
    • 注意:雖然嚴格來說這不是此版本的一部分,但 cordova-cli 建立的最新預設應用程式將預設包含此外掛。

外掛開發人員的變更

  • 在 Android Studio 中開發
    • 現在完全支援 Android Studio,並且建議使用它而不是 Eclipse
    • 使用 cordova plugin add ../path/to/my-plugin --link 來連結 .java 檔案以進行開發
  • 使用 Gradle 進行建置
    • 所有建置預設使用 Gradle,而不是 Ant
    • 外掛可以新增自己的 Gradle 建置步驟!
    • 外掛可以使用 <framework> 標籤來依賴 Maven 程式庫
  • 新的 API:onStartonStoponConfigurationChanged
  • 移除 "onScrollChanged" 訊息。請改用 view.getViewTreeObserver().addOnScrollChangedListener(...)
  • CB-8702 新的 API 供外掛使用串流覆寫 shouldInterceptRequest

其他變更

  • CB-8378 移除 hidekeyboardshowkeyboard 事件(應用程式應該改用外掛)
  • CB-8735 放寬 bin/create 正規表示式 / 更好地支援數字
  • CB-8699 修正 CordovaResourceApi copyResource 在 src=未壓縮資產時建立零長度檔案的問題
  • CB-8693 CordovaLib 不應包含圖示/啟動畫面
  • CB-8592 修正生命週期事件在呼叫 init() 之前到達 CordovaWebView 時發生的 NPE
  • CB-8588 將 CATEGORY_BROWSABLE 新增至 showWebPage openExternal=true 的 intent
  • CB-8587 不允許在 showWebPage 中未列入白名單的 WebView 導覽
  • CB-7827bin/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 建立簽署的封存檔