我們很高興宣布發佈 cordova-windows 6.0.0
。
這是一個重大版本,變更了您可能依賴的功能,因此請務必閱讀以下變更列表
變更
- Windows 10 / UWP 建置現在是預設值,這表示
cordova build windows
現在預設會建置 Windows 10 UWP 應用程式。
Windows (Phone) 8.1 當然仍然支援,只需使用cordova build windows -- --appx=8.1-win
、cordova build windows -- --appx=8.1-phone
或等效的組態選項即可。 - 您現在可以使用目前安裝的 Visual Studio 2017 (撰寫本文時為
15.5.x
) 來建置應用程式,而無需任何額外的組態或破解 (例如 5.0.0 需要的環境變數VSINSTALLDIR
)。(注意:Visual Studio 2017 不再支援 Windows 8.1 應用程式,因此您只能使用安裝的 Visual Studio 2015 來建置這些應用程式。) - 新的 ENV 變數
MSBUILDDIR
允許直接設定用於建置應用程式的 MSBuild 工具。雖然VSINSTALLDIR
一直是一種 hack,它也能意外地用於切換不同的 MSBuildTools 版本,但我們現在明確地實現此功能:只需將 ENV 變數設定為您想要的 MSBuild 資料夾 (例如C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin
或C:\Program Files (x86)\MSBuild\14.0\bin\
),它就會被用於建置您的專案。- 如果您同時安裝了 Visual Studio 2017 和 Visual Studio 2015,正常的邏輯會始終選擇 Visual Studio 2017 的 MSBuild 15,並在 Windows (Phone) 8.1 專案上失敗。如果您將環境變數設定為 MSBuild 14,則可以成功建置您的 8.1 應用程式。
- 如果提供的路徑無效或不包含可運作的 MSBuild,則會觸發正常的 MSBuild 選取邏輯
- 修正了幾個錯誤
安裝
與往常一樣,只有在下一個 Cordova CLI 版本發佈時,這個新版本才會被新增為 cordova platform add windows
的預設 cordova-windows
版本。在此之前,請使用以下命令移除並重新新增 windows
平台
cordova platform rm windows
cordova platform add windows@6.0.0
已知限制
如同往常一樣,cordova-windows
的 6.0.0
版本並不完美,有一些已知的限制
- 如果您只在機器上安裝了 Visual Studio 2017,則無法建置 Windows (Phone) 8.1 應用程式。
- 與早期版本一樣,CLI 不支援 Windows 10 Mobile 模擬器,但需要使用 Visual Studio 來建置應用程式
- 某些建置和需求錯誤訊息並非最佳
意見反應
如果您在使用這個新版本時遇到問題,您現在可以使用 cordova-windows
儲存庫的 GitHub issue 來回報。
cordova-windows
的未來
這次的更新讓我們想起,除了 Windows 10 Desktop / UWP 之外,支援其他平台變體需要多少程式碼,特別是 Windows 8.1 和 Windows Phone 8.1,還有 Windows 10 Mobile。
由於 Microsoft 最近結束了對所有 Windows 8.1 變體的主流支援,總體市佔率降至 6% 以下,且 Visual Studio 2017 不再支援 8.1 開發,我們預期未來不會有任何需要更新 cordova-windows
的 8.1 支援的變更。Windows 10 Mobile 也是如此,它不再由 Microsoft 積極開發,也不會收到安全性修正程式以外的任何其他更新。
因此,我們決定棄用 cordova-windows
的所有「行動」和「手機」建置目標。在不久的將來,我們將發佈 7.0.0
版本,該版本將移除對這些平台變體的支援,並專注於 Windows 10 UWP,這將大大降低複雜性並簡化未來的維護。
當然,支援這些平台的 cordova-windows 6.0.0
將會持續可用,並在必要時接收錯誤修正 (類似於 cordova-windows@4
是最後一個支援 Windows 8.0 的版本)。
如果您對這些計畫有任何異議或意見,請在本部落格文章的評論中告訴我們。
精選的變更日誌
- CB-13889 允許 Visual Studio 2017 環境的測試失敗 (#263)
- CB-13878
MSBUILDDIR
環境變數 (#262) - CB-13883 Visual Studio 2017 支援 (#261)
- CB-13877 清理
MSBuildTools.js
(#259) - CB-13870 改善
check_reqs
(#258) - CB-13877 關於 appveyor 上 msbuild 和 visual studio 的更多環境資訊 (#257)
- CB-13877 第一個
MSBuildTools.js
工作:偵錯輸出、移動錯放的方法、註解 (#255) - CB-13875 新增可在 e2e 測試中呼叫的
prepare
指令碼 (#254) - CB-13817 為
--appx
參數新增新的別名uwp
,包括測試 (#251) - CB-13870 將預設值從 UAP 變更為 10.0 (#253)
- CB-13829 修正自 CB-13237 以來中斷的測試 (#246)
- CB-11968 新增
config.xml
中對 config-file 的支援 (#235) - CB-13799 更新
cordova-windows
的 npm 測試 - CB-13812 也在 AppVeyor 上使用 VS 2017 執行測試
- CB-13641 支援透明的啟動畫面背景顏色。 (#245)
- CB-13175 修正啟動時 Windows8.1 崩潰的問題
- CB-13422 (windows) 修正建置錯誤訊息中的錯字
- CB-12895 忽略 eslint 的
cordova.js
,並移除註解和對 jshint 的參考 - CB-13237 預設為 UAP
- CB-13155 改善目標剖析
- CB-13022 更正
check_reqs
期間的 VS 安裝警告 - CB-12636 修正
check_reqs
以正確尋找 VS 2017 - CB-12895 設定 eslint 並移除 jshint
- 允許在使用 --bundle 和多個架構時建置。這關閉了 #175
- README:修正損壞的 Markdown 標題
- CB-12617 從 CI 中移除 node 0.x
- CB-12847 修正
package.json
中的bugs
項目 - CB-12784 修正 Windows 10 Creators Update 上的崩潰
- 新增對 uap3 的支援。
- CB-12018 更新測試以使用 jasmine 而非 jasmine-node
- CB-12499 UWP:以資源檔案指定為相依外部程式庫未在 Release 模式中被參考