[Cordova] 解決Visual Studio 2013在中文環境下windows phone app 編譯失敗問題
環境 :
Windows 8.1 中文版
Visual Studio 2013 Update 3 中文版
Cordova 3.5.0
問題:
當使用 Cordova with Visual Studio 2013 Update 3 開發跨平台 APP 時,在中文環境下編譯 windows phone app 發生以下錯誤訊息,導致無法順利測試 windows phone app 。
原因:
這個問題原因在於進行編譯 windows phone app 時會產生 windows phone app 所專用的 WMAppManifest.xml 設定檔,而這個檔案在產生時發生了BOM code 問題,導致產生失敗,從輸出視窗可以看到 〞"嚙踝蕭??xml version="1.0" encoding="utf-8"?>"〞這樣的訊息,正確來說WMAppManifest.xml 設定檔開頭應該是 〞< ?xml version="1.0" encoding="utf-8"? > 〞。
解決方式:
如果您是安裝 Cordova CTP 1.1 with Visual Studio 2013 Update 2 版本,請先升級到 Cordova CTP 2.0 with Visual Studio 2013 Update 3 版本,接著以下列步驟進行調整,只需做一次即可。
(1)建立一個新的Multi-Device Hybrid Apps專案,然後直接 Build for windows phone 一次,此時同樣會產生原本的錯誤。
(2)接著進入 C:\Users\<user>\.cordova\lib\wp\cordova\3.5.0\wp8\bin 目錄中,找到 create.js 檔案,開啟它。
(3)以 https://github.com/MSOpenTech/cordova-wp8/blob/ac097f2801d4defe5e4d445e10b7102001631a54/wp8/bin/create.js 內容覆蓋原本的create.js 檔案內容。(點選“Raw”取得文字內容)
(4)接著再重新建立一個新的Multi-Device Hybrid Apps專案,然後直接 Build for windows phone 一次,這時就可以順利編譯完成。並且後續的專案也可以直接編譯成功,順利執行。
這個問題會再後續的版本修復,目前若您要測試使用 Cordova CTP 2.0 版本,可先以上述方式暫時獲得解決。
By No.18