我們很高興宣布,我們剛發佈了 Cordova iOS 6.0.0
!這是 Cordova 用於建置 iOS 行動應用程式的官方平台。
發佈重點
升級方式
cordova platform remove ios
cordova platform add ios@6.0.0
此主要版本中最值得注意的變更如下:
-
新增 Xcode 11 相容性,並將最低 iOS 版本提高至 11.0
截至 2020 年 4 月,Apple 要求所有應用程式商店提交的內容都必須使用 Xcode 11 建置,並以 iOS 13 SDK 為目標。
Apple 已在 iOS 8.0–9.0 中棄用
mediaPlaybackRequiresUserAction
屬性,並以mediaTypesRequiringUserActionForPlayback
取代。Apple 也已在 iOS 8.0-9.0 中棄用mediaPlaybackAllowsAirPlay
屬性,並以allowsAirPlayForMediaPlayback
取代。如果您已在專案的
config.xml
檔案中設定了這些屬性,建議您使用新的偏好設定選項MediaTypesRequiringUserActionForPlayback
或AllowsAirPlayForMediaPlayback
進行更新。此外,
MediaTypesRequiringUserActionForPlayback
的值已變更。以前是boolean
值,但現在是string
值,值可以是all
、audio
、video
或none
。 -
將
WKWebView
支援移至 Cordova-iOS 並移除UIWebView
程式碼由於此變更,
cordova-plugin-wkwebview-engine
外掛程式已過時,無法在此版本中使用。如果您已安裝此外掛程式,可以安全地使用cordova plugin remove cordova-plugin-wkwebview-engine
移除。此外,此版本還引入了
WKURLSchemeHandler
支援。使用自訂的配置透過修復因WKWebView
對file
配置套用的嚴格安全原則而存在的 CORS 問題來服務您的應用程式內容。您可以透過在config.xml
檔案中設定偏好設定選項scheme
和hostname
,輕鬆設定您的 Cordova 專案以使用自訂配置。<preference name="scheme" value="app" /> <preference name="hostname" value="localhost" />
重要的是要知道,隨著
WKURLSchemeHandler
的引入,已不再支援 iOS 10。 -
整合
SplashScreen
外掛程式碼,並以啟動故事板取代啟動影像如果您要從啟動影像遷移,有關如何設定啟動故事板影像的詳細資訊,請參閱SplashScreen 文件。
- 修正當有多個 Xcode 建置目標時覆寫套件識別碼的問題
-
將最低 CocoaPods 版本要求提高至 1.8.0
自 CocoaPods 1.7.0 起,引入了 CDN 支援。它在 1.7.2 中最終確定,但直到 1.8.0 才設定為預設值。使用 CDN 從傳統的 GitHub 儲存庫擷取 podspec 可大幅提升效能。使用 CDN,Cordova 使用者不再需要等待 CocoaPod 的 GH 儲存庫同步。現在,使用 pod 和全新的 CocoaPods 安裝建置專案只需不到一分鐘的時間。
您可以觀看他們的示範影片,了解 CocoaPods 在使用 CDN 後速度有多快。
請在 issues.cordova.io 回報您發現的任何問題!
變更包括:
- GH-875 修正:移除
q
殘留 - 雜項 (
audit-license-headers
):新增及修正授權 - GH-874 雜項:清除並準備 6.0.0 版本
- GH-873 雜項:移除未指派的啟動影像
- GH-872 雜項:移除遷移
English.lproj
已棄用的警告 - GH-871 雜項:為
CordovaLib
啟用基本國際化 - GH-866 重構:預設為檔案配置
- GH-852 ci:使用 github actions
- GH-869 重構:提高 eslint 版本,並修復程式碼檢查錯誤及重建 package-lock
- GH-860 重大變更:移除
q
依賴 - GH-859 重構:使用
superspawn
- GH-851 重大變更:以
fs-extra
取代shelljs
- GH-862 回復:將
ios-sim
從^9.0.0
降級至^8.0.2
- GH-863 雜項 (npm):新增忽略清單
- GH-861 雜項:新增
package-lock.json
- GH-790 重大功能:整合並以啟動故事板取代 SplashScreens (CB-13143)
- GH-769 重大變更:為
bin/cordova_plist_to_config_xml
新增 Python 3 相容性 - GH-847 重大變更:新增及使用
fs-extra
,並修正錯誤 - GH-853 重大變更:提高
xcode
版本,並修正錯誤 - GH-850 重大變更:修正檔案的
chmod
- GH-849 重大變更 (
pod
):移除未使用的 API,並將最低版本要求提高至1.8.0
- GH-848 重大變更:提高
cordova-common@4.0.1
版本 - GH-846 重大變更 (npm):提高依賴套件版本
- GH-845 重大變更 (npm):提高開發依賴套件版本
- GH-825 使用自動裝箱修正類型警告並簡化程式碼。
- GH-615 (ios) 不要預先填入
orientation
- GH-820 只將
bundleid
設定為主要應用程式目標 - 更新 CONTRIBUTING.md
- GH-822 雜項:移除已棄用的
orientation
方法 - GH-810 從
README
移除 wiki 的無效連結 - GH-543 功能:為 Cordova 程式庫新增
Podspec
- GH-801 重大變更 (
UserAgent
):捨棄CDVUserAgentUtil
並為WKWebView
實作 - GH-803 功能:新增
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED
- GH-802 重構:套用各種 Xcode 建議的更新
- GH-800 測試:變更
MediaTypesRequiringUserActionForPlayback
的註解值 - GH-781 重大變更:使用
WKURLSchemeHandler
服務應用程式內容 - GH-797 重大變更:移除 MediaPlaybackRequiresUserAction,並將
MediaTypesRequiringUserActionForPlayback
更新為正確的變數類型 - GH-798 重構 (
cordovaBoolSettingForKey
):改進布林值檢查和原生記錄 - GH-785 重構:棄用
mediaPlaybackAllowsAirPlay
- GH-794 樣式:移除 Objective-C 測試模組中的額外空格
- GH-784 雜項:棄用
mediaPlaybackRequiresUserAction
- GH-783 重大變更 (
CDVURLProtocol
):刪除 - GH-789 雜項:修正已棄用的
stringByAddingPercentEscapesUsingEncoding
用法 - GH-788 雜項:移除已棄用的方法
viewDidUnload
- GH-780 重大變更:將 Xcode 相容性升級至 11.0
- GH-787 修正 (
CDVWebViewEngine
):JavaScript 對 Native 的呼叫無法運作 - GH-786 測試:僅在 Xcode 11 上執行
- GH-782 修正 (
node
):使用shebang
直譯器時需要失敗 - GH-779 重大變更:將
deployment-target
提高至11.0
- GH-773 重構:捨棄
uiwebview
並新增wkwebview
- GH-751 重構:使用樣板字串
- GH-749 重構:轉換分隔變數
- GH-750 重構:轉換物件簡寫
- GH-748 重構:不要將 this 別名為 self
- GH-747 重構:使用箭頭函式
- GH-754 修正:取代
Podfile
中的變數 - GH-746 重構:將
var
轉換為let
/const
- GH-744 雜項:更新
eslint
並套用修正 - GH-743 雜項:提高
node
要求 (>=10) - GH-731 CB-14135(ios):逸出
Podfile
中名稱的所有單引號