部落格 RSS Feed

Cordova Windows 6.0.0 發佈!
2018 年 2 月 27 日

我們很高興宣布發佈 cordova-windows 6.0.0

這是一個重大版本,變更了您可能依賴的功能,因此請務必閱讀以下變更列表

變更

  • Windows 10 / UWP 建置現在是預設值,這表示 cordova build windows 現在預設會建置 Windows 10 UWP 應用程式。
    Windows (Phone) 8.1 當然仍然支援,只需使用 cordova build windows -- --appx=8.1-wincordova 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\BinC:\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-windows6.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 模式中被參考