Apache Cordova 團隊很高興宣布新的外掛程式發佈,同時我們也將核心外掛程式移至 npm!
- 我們也鼓勵第三方外掛程式開發人員開始將他們的外掛程式發佈到 npm!
- 要開始使用來自 npm 的外掛程式,開發人員必須將他們的 Cordova CLI 更新至 5.0.0 或更高版本。請閱讀關於 Cordova CLI 5.0.0 的發佈部落格文章。
隨著移至 npm,我們決定重新命名我們的核心外掛程式,以提高可讀性,並更好地適應 npm 生態系統。
- 我們所有的核心外掛程式都已將其 ID 從
org.apache.cordova.*
更改為cordova-plugin-*
。 - 開發人員現在可以使用命令
cordova plugin add cordova-plugin-device
安裝外掛程式。使用新的 ID 將直接從 npm 取得外掛程式。
我們目前的 Cordova 外掛程式註冊表 (CPR) 將繼續運作至少 6 個月(2015 年 10 月 15 日
),在此期間,我們會協助外掛程式開發人員轉換到 npm。這也將允許目前的 Cordova 開發人員將他們的 CLI
升級至 5.0.0 或更高版本。
- 我們將在
2015 年 7 月 15 日
將 CPR 切換為唯讀模式。
要在 npm 上尋找外掛程式,請搜尋 ecosystem:cordova。我們正與 npm 合作以改善可探索性,並將在今年稍後發布更多消息。我們鼓勵所有第三方外掛程式開發人員在他們外掛程式的 package.json
中新增 ecosystem:cordova
作為關鍵字。
外掛程式作者:將您的外掛程式移至 npm 的步驟
- 選填 決定您是否要變更您外掛程式的
id
。如果您決定變更,- 更新
plugin.xml
中的id
,並使用新的id
更新您的 readme。 - 發送一個拉取請求,將您的新 id 和舊 id 新增至 Cordova Registry Mapper。
- 我們將該模組整合到 Cordova CLI 中,以警告使用者在將外掛程式新增到他們的專案時使用新的
id
。
- 更新
- 將
package.json
新增至您的外掛程式,- 注意:為了簡化流程,請確保您
plugin.xml
中的id
與您package.json
中的package-name
相同。 - 使用
plugman createpackagejson [外掛程式目錄]
來建立package.json
。- 這將根據您
plugin.xml
中的現有值建立預設值。 - 它也會自動將關鍵字
ecosystem:cordova
新增到您新產生的package.json
檔案中。 - 此外,一個 cordova 鍵將被新增到您的
package.json
中,我們計劃在未來更新工具時使用。
- 這將根據您
- 檢視 cordova-plugin-device 的
package.json
,以查看在執行plugman createpackagejson [外掛程式目錄]
命令後,您的package.json
應有的外觀範例。 - 外掛程式仍然需要一個
plugin.xml
才能安裝到 Cordova 專案中。
- 注意:為了簡化流程,請確保您
- 使用
npm publish [外掛程式目錄]
將您的外掛程式發佈到 npm。
新的白名單外掛程式
我們最近發佈了 cordova-plugin-whitelist 和 cordova-plugin-legacy-whitelist。我們已經從 cordova-android@4.0.0
開始修改了白名單的運作方式。透過此變更,現在支援設定內容安全策略 (CSP)。在沒有 cordova-plugin-whitelist
的情況下,預設會封鎖網路請求,因此即使要允許所有請求,即使您正在使用 CSP,也請安裝此外掛程式。
cordova-plugin-legacy-whitelist
允許 cordova-android@4.0.0
專案繼續使用舊的白名單方法。我們建議使用 cordova-plugin-whitelist
而非 cordova-plugin-legacy-whitelist
。
其他平台將在未來版本中包含對 cordova-plugin-whitelist
的支援。要了解更多關於白名單的資訊,請閱讀 cordova-android@4.0.0
的發佈部落格文章。
今天更新了以下外掛程式
- cordova-plugin-battery-status@1.0.0
- cordova-plugin-camera@1.0.0
- cordova-plugin-console@1.0.0
- cordova-plugin-contacts@1.0.0
- cordova-plugin-device@1.0.0
- cordova-plugin-device-motion@1.0.0
- cordova-plugin-device-orientation@1.0.0
- cordova-plugin-dialogs@1.0.0
- cordova-plugin-file@2.0.0
- cordova-plugin-file-transfer@1.0.0
- cordova-plugin-geolocation@1.0.0
- cordova-plugin-globalization@1.0.0
- cordova-plugin-inappbrowser@1.0.0
- cordova-plugin-legacy-whitelist@1.0.1
- cordova-plugin-media@1.0.0
- cordova-plugin-media-capture@1.0.0
- cordova-plugin-network-information@1.0.0
- cordova-plugin-splashscreen@2.0.0
- cordova-plugin-statusbar@1.0.0
- cordova-plugin-test-framework@1.0.0
- cordova-plugin-vibration@1.0.0
要更新您現有的外掛程式,您需要將您的 Cordova CLI
版本更新至 5.0.0。
E.g. To update your cli:
`npm install -g cordova@5.0.0`
然後移除您舊的外掛程式,並使用新的 ID 重新新增。
E.g. To update your camera plugin:
`cordova plugin rm org.apache.cordova.camera`
`cordova plugin add cordova-plugin-camera`
外掛程式變更包括
cordova-plugin-battery-status@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - 新增
travis.yml
以透過 paramedic 進行 CI - 新增了 apache/travis 徽章 - 在 INFRA 更新 GitHub 整合之前不會顯示
- CB-8808 修正了在 Windows Phone 8.1 上通過測試的問題
- CB-8831 Windows 為可用的
API
新增額外檢查 - 新增 Android+FireOS 警告,告知開發人員長時間使用會耗盡電池電力
- CB-7971 為 Windows Phone 8.1 新增
cordova-plugin-battery-status
支援 - CB-8659 iOS 4.0.x 相容性:移除
initWithWebView
方法的使用
cordova-plugin-camera@1.0.0
- CB-8653 更新 Readme
- CB-8780 使用主執行緒顯示彈出視窗。修正彈出視窗速度緩慢的問題
- CB-8746 提升檔案相依性的版本
- CB-8706 如果
saveToPhotoAlbum
為 true,則使用filePicker
- CB-8706 從
xml
中移除不必要的功能 - CB-8747 更新相依性,新增對等相依性
- CB-8782 更新文件以說明
allowEdit
的怪異之處,它不是 100% 可用,但比以前好 - CB-8782 修正流程,以便我們儲存裁剪過的影像並使用它,而不是原始未裁剪的影像。裁剪僅支援 G+ Photos Crop,其他裁剪可能會無法運作,取決於 OEM
- CB-8740 移除在 Samsung Galaxy S3 上失敗的
FileHelper
呼叫,現在我們有了真正的路徑,我們只需要更新MediaStore
,在這種情況下不需要從中提取 - CB-8740 部分修正了在
MobileSpec
中找到的「將影像儲存到圖庫」錯誤 - CB-8683 將
plugin-id
變更為package-name
- CB-8351 修正
integerValueForKey
的自訂實作 - 修正
cordova-paramedic
路徑變更,使用TRAVIS_BUILD_DIR
建立,使用 npm 安裝 paramedic - CB-8683 BlackBerry 更新了從
org.apache.cordova.camera
到cordova-plugin-camera
的參照 - CB-8707 Windows 重構程式碼以提高可讀性
- 文件:新增 Windows 至支援平台
- CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
cordova-plugin-console@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8560 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - 文件:將 Windows8 重新命名為 Windows
- CB-8362 將 Windows 平台區段新增至 Console 外掛程式
cordova-plugin-contacts@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8561 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
- CB-8683 更新了 wp 特定舊 id 到新 id 的參照
- CB-8604 擱置 wp8 不支援的測試,更新文件
- CB-8395 將 wp8 不支援的測試標示為擱置
cordova-plugin-device@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- 新增 travis 徽章
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - 為 TravisCI 新增跨外掛程式 iOS paramedic 測試執行
- 移除已停止運作的 windows8 版本
cordova-plugin-device-motion@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
,特定舊 id 到新 id 的參照 - CB-8562 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8683 更新了 Windows 和 Tizen * CB-8096 如果裝置上不存在加速計,則擱置最近新增的 spec.12
- CB-8096 如果裝置上不存在加速計,則擱置自動測試
- CB-8083 新增測試以確保每次都呼叫成功回呼
- CB-8312 在 Windows 上將加速計值乘以 -g
cordova-plugin-device-orientation@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8563 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8653 更新 Readme
- CB-8683 更新了 Windows 和 Tizen 特定舊 id 到新 id 的參照
- CB-8458 修正了當沒有指南針硬體時,測試的錯誤失敗
- CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
- 強制執行非同步回呼
- 更新外掛程式為 Windows 而非 Windows8
- CB-8614 Windows 修復了
getCurrentHeading
和watchHeading
cordova-plugin-dialogs@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8565 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8683 更新 wp 和 bb 特定參考,將舊 id 改為新 id
- CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
- CB-8367 Windows 新增提示支援
cordova-plugin-file@2.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8567 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8689 修復
makeEntryForNativeUri
中的NPE
(會影響檔案傳輸) - 新增快取以加速
AssetFilesystem
目錄列表 - 不要為一般例外狀況 (例如找不到檔案) 記錄堆疊追蹤
- 調整測試,如果
deleteEntry
失敗則讓測試失敗 (而不是逾時) - CB-8032 為
CDVFileSystem->makeEntryForPath:isDirectory:
新增nativeURL
外部方法支援 - CB-8423 更正非同步測試中
done()
的使用方式 - CB-8459 修復因不正確的相對路徑處理導致的 spec 111 失敗
- 為
FileEntry
新增nativeURL
屬性,實作readAsArrayBuffer
和readAsBinaryString
- CB-8675 還原 "CB-8351 iOS: 使用
base64EncodedStringWithOptions
而非CordovaLib
的類別擴充" - CB-6428 修復未壓縮資源被複製為零長度檔案的問題
- CB-8695 iOS 修復
asset-library
URL 的blob.slice()
- CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - Android 調整
build-extras.gradle
以僅讀取/寫入主要的assets/
,而非build/
- CB-8683 Android 修復因外掛程式重新命名而損壞的單元測試
- CB-6428 Android 修復資源
FileEntry
的大小為 -1 的問題 - Android 將
URLforFullPath
移至基底類別 (並重新命名為localUrlforFullPath
) - CB-6428 Android 在 README 中提及
build-extras.gradle
- CB-7109 Android 從主執行緒剖析引數
- CB-8663 Android 不要通知
MediaScanner
私人檔案 - Android 在讀取整個檔案時不要使用 LimitedInputStream (最佳化)
- CB-6428 Android 新增從資源 -> 檔案系統複製目錄的支援
- Android 新增
listChildren()
: 可由 Java 使用的readEntriesAtLocalURL()
版本 - CB-6428 Android 新增
file:///android_asset
URL 的支援 - CB-8642 Android 修復內容 URI 無法與解析/複製搭配運作的問題
- Android 確保
LocalFilesystemURL
只能使用cdvfile
URL 建立 - Android 將
CordovaResourceApi
移至 Filesystem 基底類別 - Android 在
ContentFilesystem
中使用CordovaResourceApi.mapUriToFile()
而非自己的自訂邏輯 - Android 在 resolveLocalFileSystemURI 中使用 Uri.parse 而非手動剖析
- Android 刪除無效的
JavaDoc
(lint 錯誤) - Android 使用
CordovaResourceAp
i 而非FileHelper
- CB-7956 Browser 新增支援
- CB-8849 WP8 修復
ReadAsArrayBuffer
以傳回ArrayBuffer
而非 Array - CB-8819 wp8 修復 FileReader 的
readAsBinaryString
- 文件:新增 Windows 至支援平台
cordova-plugin-file-transfer@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8566 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8746 提升檔案相依性的版本
- CB-8583 強制下載覆寫現有目標檔案
- CB-8589 修復伺服器回應未包含任何資料時的上傳失敗問題
- CB-8747 更新相依性,新增對等相依性
- CB-8407 使用 File 代理程式為下載成功回呼建構有效的 FileEntry
- CB-8407 移除下載方法中過多的原生路徑轉換
- CB-8429 更新版本和
RELEASENOTES.md
以發佈 0.5.0 版 - CB-8095 修復 JSHint 和格式化問題
- CB-8095 更新測試和文件
- CB-8095 重寫上傳方法以正確支援進度事件
- Android 修復
sourceUri
而非targetUri
上未知uri
類型時的錯誤報告 - CB-7957 Browser 新增支援
- CB-8641 修復測試以在 Windows 和 wp8 上通過
- CB-8654 在文件中註明 WP8 下載請求快取
- CB-8590 Windows 修復
download.onprogress.lengthComputable
- CB-8495 修復 wp8 和 wp8.1 測試失敗
cordova-plugin-geolocation@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8568 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8681 修復偶爾發生的測試失敗
- CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
- Firefox OS 外掛程式中的錯誤參數
- CB-8443 由於多次呼叫 done,Geolocation 測試在 Windows 上失敗
- 文件:新增 Windows 至支援平台
cordova-plugin-globalization@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8569 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8683 更新 tizen 和 Browser 特定參考,將舊 id 改為新 id
- CB-7960 Browser 新增支援
- CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8394 為 Windows 和 wp8 暫緩不支援的測試
- 在
plugin.xml
和文件中為 Windows8 平台新增獨立章節
cordova-plugin-inappbrowser@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8570 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-4930 (前綴) InAppBrowser 應將狀態列納入考量
- 新增停用/啟用縮放控制項的選項
- 更新文件,將
hardwareback
預設設為 true - 新增
hardwareback
選項,允許硬體返回按鈕返回 - CB-8444 為
cordova.InAppBrowser.open
新增一個 clobber - CB-8444 不要 clobber
window.open
- 新增新的符號/clobber 來存取 open 函式 (cordova.InAppBrowser.open
) 變更現有測試以使用新的符號 (即不要依賴外掛程式的window.open
clobber) - 新增測試以透過手動替換為新的符號來使用window.open
- 更新文件以棄用外掛程式的window.open
clobber - CB-8659 更新
InAppBrowser
以同時支援 cordova-ios 4.0.x 和 3.x - 更新 Android
zoom=no
選項的文件 - 將外部 Android 頁面保留在單一索引標籤中
- CB-7961 Browser 新增支援
- CB-8432 更正 Browser 包裝函式的樣式,使其在某些頁面上正確顯示
- CB-7689 為 Windows 平台新增
insertCSS
支援 - CB-8635 改善 Windows 平台上的 UX
- CB-8661 在 Windows 上傳回已執行的指令碼結果
- CB-8683 更新 WP 和 Browser 特定參考,將舊 id 改為新 id
cordova-plugin-media@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8572 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8746 提升檔案相依性的版本
- CB-8747 更新相依性,新增對等相依性
- CB-8686 移除
musicLibrary
功能 - CB-8428 修復在未設定音訊的裝置上,媒體外掛程式測試中多次呼叫
done()
的問題 - CB-8425 媒體外掛程式
.ctr
: 根據規格要求 src 參數 - CB-7962 新增 Browser 平台支援
- CB-8659 iOS 4.0.x 相容性:移除已棄用標頭的使用
- CB-8793 修復測試以在 wp8 和 Windows 上通過
- CB-8779 修復 wp8 上的媒體狀態報告
- CB-8541 新增關於 Windows 上可用錄製格式的資訊
- CB-8428 修復在沒有可用的音訊播放硬體時 Windows 上的測試
- CB-8426 將 Windows 平台章節新增至媒體外掛程式
cordova-plugin-media-capture@1.0.0
- CB-8683 將
plugin-id
變更為package-name
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8746 提升檔案相依性的版本
- CB-8747 更新相依性,新增對等相依性
- CB-8687 整合 manifest 目標
- CB-7963 Browser 新增支援
- CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8571 整合 TravisCI
- CB-8538 新增
package.json
檔案
cordova-plugin-network-information@1.0.0
- CB-8683 將
plugin-id
變更為package-name
- CB-8185 修復
cordova.platformId
中的錯字 - 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8185 在 Browser 平台上使用
navigator.onLine
作為連線資訊來源 - CB-8659 iOS 4.0.x 相容性:移除
initWebView
方法的使用 - CB-8573 整合 TravisCI
- CB-8538 新增
package.json
檔案
cordova-plugin-splashscreen@2.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8574 整合 TravisCI
- CB-8345 將啟動畫面資源的預設值設為
screen
(這是範本和 CLI 假設的值) - 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - CB-8836 在動畫處理
splashscreen
後當機 - CB-8797 iOS 新增啟動畫面偏好設定
FadeSplashScreenDuration
和FadeSplashScreen
- CB-8753 Android 修復先前提交中遺失的匯入
- CB-8753 Android 新增
SplashMaintainAspectRatio
偏好設定 - 文件:新增 Windows 至支援平台
- CB-7964 browser 新增支援
- WP8 遵循設定檔中的
SplashScreen
和SplashScreenDelay
偏好設定 - CB-8397 Windows 支援顯示 Windows Phone 啟動畫面
cordova-plugin-statusbar@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8575 整合 TravisCI
- 使用
TRAVIS_BUILD_DIR
,透過 npm 安裝 paramedic - 使用
StatusBarBackgroundColor
而非AndroidStatusBarBackgroundColor
,並在 readme 中新增一個怪癖 - Android 5+ 新增
StatusBar.backgroundColorByHexString
(和StatusBar.backgroundColorByName
) 的支援 - Android 允許設定
statusbar backgroundcolor
cordova-plugin-test-framework@1.0.0
- CB-8538 新增
package.json
檔案 - CB-8683 將
plugin-id
變更為package-name
- CB-8528 為在 jasmine 2.2.0 中移動的
jasmine.Expectation.addMatchers
新增一個 shim - CB-8528 更新測試框架外掛程式以使用 Jasmine 2.2.0
- CB-8385 確保
plugin-test-framework
只觸發測試一次
cordova-plugin-vibration@1.0.0