升級 iOS

本指南說明如何修改 iOS 專案,以便從舊版 Cordova 升級。這些說明大多適用於使用早於 cordova CLI 公用程式的一組舊命令列工具所建立的專案。請參閱命令列介面,以了解如何更新 CLI 版本。

注意:您應該使用最新版本的 iOS SDK,該 SDK 包含在最新版本的 Xcode 中。

升級 4.x 專案

cordova platform rm ios
cordova platform add ios

將 3.6.0 專案升級至 4.0.0

對於非 CLI 專案,請執行

bin/update path/to/project

對於 CLI 專案

  1. 更新 cordova CLI 版本。請參閱命令列介面

  2. 在您現有的專案中執行 cordova platform update ios

將 3.3.0 專案升級至 3.4.0

對於非 CLI 專案,請執行

bin/update path/to/project

對於 CLI 專案

  1. 更新 cordova CLI 版本。請參閱命令列介面

  2. 執行 cordova platform update ios

將 3.2.0 專案升級至 3.3.0

對於非 CLI 專案,請執行

bin/update path/to/project

對於 CLI 專案

  1. 更新 cordova CLI 版本。請參閱命令列介面

  2. 執行 cordova platform update ios

將 3.1.0 專案升級至 3.2.0

對於非 CLI 專案,請執行

bin/update path/to/project

對於 CLI 專案

  1. 更新 cordova CLI 版本。請參閱命令列介面

  2. 執行 cordova platform update ios

將 3.0.0 專案升級至 3.1.0

對於非 CLI 專案,請執行

bin/update path/to/project

對於 CLI 專案

  1. 更新 cordova CLI 版本。請參閱命令列介面

  2. 執行 cordova platform update ios

iOS 7 問題

  1. index.html 檔案的 viewport meta 標籤中移除 width=device-width, height=device-height。(請參閱相關的錯誤。)

  2. 更新您的媒體、媒體擷取和啟動畫面核心外掛,以支援 iOS 7。

Xcode 5 問題

  1. 如果 Xcode 5 提示您這麼做(在 Issues Navigator 中),請更新您的專案設定。

  2. 更新您的C/C++/Objective-C 的編譯器設定,在建置設定標籤的建置選項區段下。選擇預設編譯器 (Apple LLVM 5.0)

從 2.9.0 升級至 CLI (3.0.0)

  1. 使用 cordova CLI 建立新的 Apache Cordova 3.0.0 專案,如命令列介面中所述。

  2. 將您的平台新增至 cordova 專案,例如:cordova platform add ios

  3. 將專案的 www 目錄的內容複製到您剛建立的 cordova 專案根目錄的 www 目錄。

  4. 從原始專案複製或覆蓋任何原生資產(Resources 等),並務必將任何新檔案新增至 .xcodeproj 專案。iOS 專案會在 platforms\ios 目錄內建置。

  5. config.xml 複製到 www 目錄,並移除任何外掛定義。在此處修改設定,而不是平台目錄。

  6. 使用 cordova CLI 工具安裝您需要的任何外掛。請注意,CLI 將所有核心 API 都視為外掛,因此可能需要新增它們。只有 3.0.0 外掛與 CLI 相容。

  7. 建置並測試。

將 2.9.0 專案升級至 3.0.0

  1. 下載 Cordova 3.0.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-3.0.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova.js(請注意,它不再有版本後綴,版本在檔案本身的標頭中)檔案從新專案複製到 www 目錄,並刪除 www/cordova.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova.js 檔案。

  7. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

注意:從 Cordova 3.0.0 開始,外掛不會預先安裝,您需要使用 plugman 命令列公用程式自行安裝。請參閱使用 Plugman 管理外掛

將 2.8.0 專案升級至 2.9.0

  1. 下載 Cordova 2.9.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.9.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova.js(請注意,它不再有版本後綴,版本在檔案本身的標頭中)檔案從新專案複製到 www 目錄,並刪除 www/cordova.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova.js 檔案。

  7. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

將 2.7.0 專案升級至 2.8.0

  1. 下載 Cordova 2.8.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.8.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova.js(請注意,它不再有版本後綴,版本在檔案本身的標頭中)檔案從新專案複製到 www 目錄,並刪除 www/cordova-2.7.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova.js 檔案。

  7. config.xml 檔案中的任何 <plugin> 標籤更新為 <feature> 標籤。請注意,現有的 <plugin> 標籤仍然有效,但已過時。您可以將此資訊複製到新專案的 config.xml 檔案中。例如

     <plugins>
         <plugin name="LocalStorage" value="CDVLocalStorage" />
         <!-- other plugins -->
     </plugins>
    
     <!-- change to: (note that a <feature> tag is on the same level as <plugins> -->
     <feature name="LocalStorage">
         <param name="ios-package" value="CDVLocalStorage" />
     </feature>
     <!-- other <feature> tags -->
    
  8. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

  9. 將這兩個框架新增至您的專案

     OpenAL
     ImageIO
    
  10. 更新專案的目標建置設定。在連結 → 其他連結器旗標下,將 "-Obj-C" 編輯為 "-ObjC"

  11. 更新專案的目標建置設定。在連結 → 其他連結器旗標下,將 "-all_load" 變更為 -force\_load ${BUILT\_PRODUCTS\_DIR}/libCordova.a。只有在您遇到此問題中定義的問題時,才需要這麼做。

將 2.6.0 專案升級至 2.7.0

  1. 下載 Cordova 2.7.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.7.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova-2.7.0.js 檔案從新專案複製到 www 目錄,並刪除 www/cordova-2.6.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.7.0.js 檔案。

  7. 根據新專案中的檔案更新(或替換,如果您從未變更檔案)AppDelegate.m 檔案(請參閱此差異)。

  8. config.xml 檔案中,移除此行

  9. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

將 2.5.0 專案升級至 2.6.0

  1. 下載 Cordova 2.6.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.6.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. 將專案的 www/cordova-2.6.0.js 檔案複製到 www 目錄,並刪除 www/cordova-2.5.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他參考該指令碼的檔案)中的 Cordova 指令碼參考,以參考新的 cordova-2.6.0.js 檔案。

  7. 根據新專案中的檔案更新(或替換,如果您從未變更檔案)AppDelegate.m 檔案(請參閱此差異)。

  8. config.xml 檔案中,新增此新行

  9. config.xml 檔案中,新增此新行

  10. config.xml 檔案中,UIWebViewBounce 已變更為 DisallowOverscroll,且預設值不同

  11. config.xml 檔案中,EnableLocation 偏好設定已過時。

  12. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

將 2.4.0 專案升級至 2.5.0

  1. 下載 Cordova 2.5.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.5.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova-2.5.0.js 檔案從新專案複製到 www 目錄,並刪除 www/cordova-2.4.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.5.0.js 檔案。

  7. 根據新專案中的檔案更新(或替換,如果您從未變更檔案)AppDelegate.m 檔案(請參閱此差異)。

  8. config.xml 檔案中,新增這些新行

  9. config.xml 檔案中,編輯根元素,將其從 cordova 變更為 widget

  10. config.xml 檔案中,移除 OpenAllWhitelistURLsInWebView 偏好設定

  11. 刪除 cordova 目錄,並將 cordova 目錄從新專案複製到您專案的根目錄。在 2.5.0 中,這已更新指令碼。

  12. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

將 2.3.0 專案升級至 2.4.0

  1. 下載 Cordova 2.4.0 來源並將其解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.4.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. www/cordova-2.4.0.js 檔案從新專案複製到 www 目錄,並刪除 www/cordova-2.3.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.4.0.js 檔案。

  7. 根據新專案中的 MainViewController.m 檔案更新(或取代,如果您從未變更過此檔案)您的 MainViewController.m 檔案(請參閱此差異比較)。

  8. 根據新專案中的 AppDelegate.m 檔案更新(或取代,如果您從未變更過此檔案)您的 AppDelegate.m 檔案(請參閱此差異比較)。

  9. config.xml 檔案中,新增此行

  10. 刪除 cordova 目錄,並將新專案中的 cordova 目錄複製到您專案的根目錄。在 2.4.0 版本中,這已修復指令碼。

  11. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

  12. 將 AssetsLibrary.framework 作為資源新增到您的專案中。(有關如何操作的說明,請參閱 Apple 的文件)。

將 2.2.0 版專案升級至 2.3.0 版

  1. 下載並將 Cordova 2.3.0 來源解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.3.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. 將新專案中的 www/cordova-2.3.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-2.2.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.3.0.js 檔案。

  7. 根據新專案中的 MainViewController.m 檔案更新(或取代,如果您從未變更過此檔案)您的 MainViewController.m 檔案。

  8. 刪除 cordova 目錄,並將新專案中的 cordova 目錄複製到您專案的根目錄。在 2.3.0 版本中,這有新的指令碼。

  9. 刪除 CordovaLib 目錄,並將 CordovaLib 目錄從新專案複製到您專案的根目錄。

  10. 藉由在專案檔案上執行指令碼 bin/cordova_plist_to_config_xml,將 Cordova.plist 檔案轉換為 config.xml

  11. 藉由在 <cordova><plugins> 下方新增此標籤,將 InAppBrowser 外掛程式新增至 config.xml

    <plugin name="InAppBrowser" value="CDVInAppBrowser" />
    
  12. 請注意,Objective-C 外掛程式不再進行白名單處理。若要使用應用程式白名單將您的連線列入白名單,您需要將連線的 User-Agent 標頭設定為與主要 Cordova WebView 相同的 user-agent。您可以透過存取主要視圖控制器的 userAgent 屬性來取得此資訊。主要視圖控制器 (CDVViewController) 也具有 URLisAllowed 方法,可供您檢查 URL 是否通過白名單。

  13. 裝置 API 變更

    • 對於 iOS,device.platform 過去會傳回 iPhoneiPadiPod Touch;現在會(正確地)傳回 iOS
    • 對於 iOS,device.name(現在已在所有平台上棄用)過去會傳回使用者裝置的名稱(例如「Shazron 的 iPhone 5」);現在會傳回 device.platform 過去傳回的內容:iPhoneiPadiPod Touch
    • 對於所有平台,有一個稱為 device.model 的新屬性;這會傳回特定的裝置型號,例如 iPad2,5(對於其他平台,這會傳回 device.name 過去傳回的內容)。

將 2.1.0 版專案升級至 2.2.0 版

  1. 下載並將 Cordova 2.2.0 來源解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.2.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. 將新專案中的 www/cordova-2.2.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-2.1.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.2.0.js 檔案。

  7. 根據新專案中的 MainViewController.m 檔案更新(或取代,如果您從未變更過此檔案)您的 MainViewController.m 檔案。
    • 已更新 → viewWillAppear
  8. 將新專案中的 cordova 目錄複製到您專案的根目錄。在 2.2.0 版本中,這有更新的「模擬」指令碼。

  9. 接著,更新 CordovaLib 子專案參考。從 Cordova 2.1.0 開始,我們在參考 CordovaLib 所在位置時,不再使用 CORDOVALIB Xcode 變數,現在參考是絕對檔案參考。
    1. 啟動 Terminal.app
    2. 前往您安裝 Cordova 的位置(請參閱步驟 1),在 bin 子目錄中
    3. 執行下方的指令碼,其中第一個參數是您專案 .xcodeproj 檔案的路徑

       update_cordova_subproject path/to/your/project/xcodeproj
      

注意:在 2.2.0 版本中,bin/create 指令碼會將 CordovaLib 子專案複製到您的專案中。若要擁有相同的設定類型,只需將正確的 CordovaLib 複製到您的專案目錄中,並更新 Xcode 檔案檢查器中 CordovaLib 子專案的位置(相對於專案)。

將 2.0.0 版專案升級至 2.1.0 版

在 Cordova 2.1.0 中,CordovaLib 已升級為使用自動參考計數 (ARC)。您不需要升級至 ARC 即可使用 CordovaLib,但是如果您想要升級專案以使用 ARC,請使用功能表中的 Xcode 移轉精靈:編輯 → 重構 → 轉換為 Objective-C ARC…,取消選取 libCordova.a,然後執行精靈直到完成。

  1. 下載並將 Cordova 2.1.0 來源解壓縮到您硬碟上的永久目錄位置,例如 ~/Documents/Cordova-2.1.0

  2. 如果 Xcode 正在執行,請將其關閉。

  3. 使用 Terminal.app,導覽至您放置上述下載來源的目錄。

  4. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  5. 將新專案中的 www/cordova-2.1.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-2.0.0.js 檔案。

  6. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.1.0.js 檔案。

  7. 根據新專案中的 AppDelegate.m 檔案更新(或取代,如果您從未變更過此檔案)您的 AppDelegate.m 檔案。
    • 已編輯 → application:didFinishLaunchingWithOptions
    • 已新增 → application:supportedInterfaceOrientationsForWindow
  8. 根據新專案中的 MainViewController.m 檔案更新(或取代,如果您從未變更過此檔案)您的 MainViewController.m 檔案。
    • 已新增 → viewWillAppear
  9. 將新專案中的 cordova 目錄複製到您專案的根目錄。在 2.1.0 版本中,這有更新的指令碼以支援包含空格的路徑。

  10. 從您的專案中移除 VERSION 檔案參考(不是 CordovaLib 中的那個)。

  11. 接著,更新 CordovaLib 子專案參考。從 Cordova 2.1.0 開始,我們在參考 CordovaLib 所在位置時,不再使用 CORDOVALIB Xcode 變數,現在參考是絕對檔案參考。
    1. 啟動 Terminal.app
    2. 前往您安裝 Cordova 的位置(請參閱步驟 1),在 bin 子目錄中
    3. 執行下方的指令碼,其中第一個參數是您專案 .xcodeproj 檔案的路徑

       update_cordova_subproject path/to/your/project/xcodeproj
      

將 1.9.0 版專案升級至 2.0.0 版

  1. 安裝 Cordova 2.0.0。

  2. 建立新專案,如iOS Shell 工具指南中所述。您需要此新專案中的資產。

  3. 將新專案中的 www/cordova-2.0.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-1.9.0.js 檔案。

  4. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-2.0.0.js 檔案。

  5. 將新專案中的 cordova 目錄複製到您專案的根目錄(如果您想要專案命令列工具)。

  6. Cordova.plist 檔案中,在 Supporting Files 群組下方的 Plugins 下新增一個新的項目。索引鍵為 Device,而值為 CDVDevice

  7. 移除 Cordova.framework

  8. Supporting Files 群組中移除 verify.sh

  9. 在專案導覽器中選取專案圖示,選取您的專案目標,然後選取建置設定索引標籤。

  10. 搜尋前置處理器巨集,然後移除所有 CORDOVA_FRAMEWORK=1 值。

  11. 找出安裝在您硬碟上首頁資料夾的 Documents 子目錄下的 CordovaLib 目錄。

  12. 找出 CordovaLib 目錄中的 CordovaLib.xcodeproj 檔案,然後將檔案拖放到您的專案中。它應該會顯示為子專案。

  13. 建置您的專案,您應該會收到一些與 #import 指示詞相關的錯誤。

  14. 對於 #import 錯誤,請將任何以引號為基礎的匯入變更為此樣式

    #import "CDV.h"
    

    變更為此以括號為基礎的樣式

    #import <Cordova/CDV.h>
    

    並移除任何 Cordova 匯入周圍的 #ifdef 包裝函式,這些包裝函式不再需要(匯入現在是統一的)

  15. 再次建置您的專案,它應該不會有任何 #import 錯誤。

  16. 在專案導覽器中選取專案圖示,選取您的專案目標,然後選取建置階段索引標籤。

  17. 展開目標相依性階段,然後選取 + 按鈕。

  18. 選取 CordovaLib 目標,然後選取新增按鈕。

  19. 展開第一個連結二進位檔與程式庫階段(它應該已經包含一堆架構),然後選取 + 按鈕。

  20. 選取 libCordova.a 靜態程式庫,然後選取新增按鈕。

  21. 刪除執行指令碼階段。

  22. 在專案導覽器中選取專案圖示,選取您的專案目標,然後選取建置設定索引標籤。

  23. 搜尋其他連結器旗標,並新增值 -force_load-Obj-C

  24. 展開 CordovaLib 子專案。

  25. 找出 VERSION 檔案,將其拖曳到您的主要專案中(我們想要建立它的連結,而不是複本)。

  26. 選取為任何新增的資料夾建立群組選項按鈕,然後選取完成按鈕。

  27. 選取您在上一個步驟中剛拖曳的 VERSION 檔案。

  28. 鍵入 Option-Command-1 組合鍵以顯示檔案檢查器(或功能表項目檢視 → 工具程式 → 顯示檔案檢查器)。

  29. 位置的下拉式功能表中的檔案檢查器中,選擇相對於 CORDOVALIB

  30. 將 Xcode 偏好設定 Xcode 偏好設定 → 位置 → 衍生資料 → 進階… 設定為唯一,如此一來就可以找到統一的標頭。

  31. 在專案導覽器中選取專案圖示,選取您的目標,然後選取建置設定索引標籤。

  32. 搜尋標頭搜尋路徑。對於該設定,附加這三個值,包括引號

    "$(TARGET_BUILD_DIR)/usr/local/lib/include"
    
    "$(OBJROOT)/UninstalledProducts/include"
    
    "$(BUILT_PRODUCTS_DIR)"
    
  33. 搜尋其他連結器旗標。對於該設定,附加此值

    -weak_framework CoreFoundation
    
  34. 建置您的專案,它應該會編譯和連結,且沒有任何問題

  35. 配置下拉式選單中選取您的專案,然後選取 iPhone 5.1 模擬器

  36. 選取執行按鈕。

注意:如果您的專案在模擬器中無法如預期運作,請記下 Xcode 中主控台記錄中的任何錯誤,以尋找線索。

將 1.8.x 版專案升級至 1.9.0 版

  1. 安裝 Cordova 1.9.0。

  2. 建立新專案。您會需要此新專案中的某些資產。

  3. 將新專案中的 www/cordova-1.9.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-1.8.x.js 檔案。

  4. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-1.9.0.js 檔案。

注意:1.9.0 支援新的 BackupWebStorage 布林值 Cordova.plist 設定。預設會啟用它,因此請將它設定為 false 來停用它,尤其是在 iOS 6 上。請參閱 版本注意事項:Safari 和 UIKit 區段

將 1.7.0 版專案升級至 1.8.x 版

  1. 安裝 Cordova 1.8.0。

  2. 建立新專案。您會需要此新專案中的某些資產。

  3. 將新專案中的 www/cordova-1.8.0.js 檔案複製到 www 目錄中,並刪除 www/cordova-1.7.x.js 檔案。

  4. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,以指向新的 cordova-1.8.0.js 檔案。

如果您打算使用擷取 API,您將需要新的iPad retina 顯示器資產

  1. 將新專案中的 Resources/Capture.bundle 項目複製到您的專案目錄中,覆寫您現有的 Resources/Capture.bundle 項目。

  2. 在您的專案中,在 Xcode 中將 Capture.bundle 項目選入您的專案導覽器,鍵入 Delete 鍵,然後從產生的對話方塊中選取移除參考

  3. 將上方步驟 1 的新 Capture.bundle 拖曳到 Xcode 的專案導覽器中,然後選取為新增的資料夾建立群組選項按鈕。

將 1.6.x 專案升級至 1.7.0

  1. 安裝 Cordova 1.7.0。

  2. 建立新專案。您會需要此新專案中的某些資產。

  3. 將新專案中的 www/cordova-1.7.0.js 檔案複製到 www 目錄,並刪除 www/cordova-1.6.0.js 檔案。

  4. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 cordova-1.7.0.js 檔案。

將 1.5.0 專案升級至 1.6.x

  1. 安裝 Cordova 1.6.1。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.hMainViewController.mMainViewController.hCordova.plist

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 1.5.0 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     Cordova.plist
    
  5. 將所有新的 MainViewControllerAppDelegate 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/cordova-1.6.1.js 檔案複製到 www 目錄,並刪除 www/cordova-1.5.0.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 cordova-1.6.1.js 檔案。

  8. 將新的 Cordova.plist 檔案加入您的專案。這是必要的,因為核心外掛程式服務名稱必須變更為與 Android 和 BlackBerry 的名稱相符,以便使用統一的 Cordova JavaScript 檔案 (cordova-js)。

  9. 將您在備份的 Cordova.plist 中設定的任何設定、外掛程式ExternalHosts 項目整合到新的 Cordova.plist 中。

  10. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼,整合到新的 AppDelegate 檔案中。AppDelegate.m 中的任何 UIWebViewDelegateCDVCommandDelegate 程式碼現在需要移至 MainViewController.m 中(請參閱該檔案中的註解區段)。

  11. 將您在備份的 MainViewController.hMainViewController.m 中擁有的任何專案特定程式碼,整合到新的 MainViewController 檔案中。

  12. 按一下專案導覽器中的專案圖示,選取您的專案,然後選取建置設定標籤。

  13. 在搜尋欄位中輸入 C/C++/Objective-C 編譯器

  14. 選取 Apple LLVM Compiler 3.1 值。

將 1.4.x 專案升級至 1.5.0

  1. 安裝 Cordova 1.5.0。

  2. 建立新的專案並執行一次。您將需要此新專案中的一些資源。

  3. 將新專案中的 www/cordova-1.5.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-1.4.x.js 檔案。

  4. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 Cordova cordova-1.5.0.js 檔案。

  5. 在專案導覽器中找到 PhoneGap.framework,選取它。

  6. 按下 Delete 鍵,刪除專案導覽器中的 PhoneGap.framework 參考。

  7. 按下 Option-Command-A 鍵組合,應會下拉一個表單,以便將檔案加入您的專案(加入檔案… 表單)。請確保已選取為新增的資料夾建立群組選項按鈕。

  8. 按下 Shift-Command-G 鍵組合,應會下拉另一個表單,供您前往資料夾(前往資料夾: 表單)。

  9. 前往資料夾: 表單中輸入 /Users/Shared/Cordova/Frameworks/Cordova.framework,然後按下前往按鈕。

  10. 加入檔案… 表單中按下加入按鈕。

  11. 在專案導覽器中選取 Cordova.framework

  12. 按下 Option-Command-1 鍵組合,以顯示檔案檢查器

  13. 檔案檢查器中,針對位置的下拉式選單選擇絕對路徑

  14. 按下 Option-Command-A 鍵組合,應會下拉一個表單,以便將檔案加入您的專案(加入檔案… 表單)。請確保已選取為新增的資料夾建立群組選項按鈕。

  15. 按下 Shift-Command-G 鍵組合,應會下拉另一個表單,供您前往資料夾(前往資料夾: 表單)。

  16. 前往資料夾: 表單中輸入 ~/Documents/CordovaLib/Classes/deprecated,然後按下前往按鈕。

  17. 加入檔案… 表單中按下加入按鈕。

  18. AppDelegate.hAppDelegate.mMainViewController.h 檔案中,將整個 #ifdef PHONEGAP_FRAMEWORK 區塊取代為

    #import "CDVDeprecated.h"
    
  19. 按一下專案導覽器中的專案圖示,選取您的目標,然後選取建置設定標籤。

  20. 搜尋 Framework 搜尋路徑

  21. 將現有值取代為 /Users/Shared/Cordova/Frameworks

  22. 搜尋 Preprocessor Macros

  23. 針對第一個(組合)值,將值取代為 CORDOVA_FRAMEWORK=YES

  24. 選取建置階段標籤。

  25. 展開執行指令碼

  26. 將所有出現的 PhoneGap 取代為 Cordova

  27. 在專案導覽器中找到 PhoneGap.plist 檔案,然後按一下檔名一次,以進入名稱編輯模式。

  28. PhoneGap.plist 重新命名為 Cordova.plist

  29. Cordova.plist 上按一下滑鼠右鍵,然後選擇開啟方式 → 原始碼

  30. 按下 Option-Command-F,從來源視窗左上角的下拉式選單中選擇取代

  31. 在尋找字串中輸入 com.phonegap,在取代字串中輸入 org.apache.cordova,然後按下全部取代按鈕。

  32. 在尋找字串中輸入 PG,在取代字串中輸入 CDV,然後按下全部取代按鈕。

  33. 按下 Command-B 來建置。您仍然有一些可以在未來消除的棄用項目(請參閱 CDVDeprecated.h。例如,將程式碼中使用的 PG* 類別取代為 CDV*)。

將 1.4.0 專案升級至 1.4.1

  1. 安裝 Cordova 1.4.1。

  2. 備份 MainViewController.m

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將新專案中的 MainViewController.m 檔案複製到您基於 1.4.0 的專案磁碟目錄中,取代舊檔案(請先備份步驟 2 的檔案)。

  5. MainViewController.m 檔案加入您的 Xcode 專案中。

  6. 將您在備份的 MainViewController.m 中擁有的任何專案特定程式碼整合到新檔案中。

  7. 更新 phonegap-1.4.0.js 檔案是選擇性的,1.4.0 和 1.4.1 之間的 JavaScript 沒有任何變更。

將 1.3.0 專案升級至 1.4.0

  1. 安裝 Cordova 1.4.0。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.h

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 1.3.0 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)。

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     MainViewController.xib
    
  5. 將所有 MainViewController 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/phonegap-1.4.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-1.3.0.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 phonegap-1.4.0.js 檔案。

  8. PhoneGap.plist 檔案中的 Plugins 下新增一個項目。索引鍵是 com.phonegap.battery,值是 PGBattery

  9. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼整合到新的 AppDelegate 檔案中。

將 1.2.0 專案升級至 1.3.0

  1. 安裝 Cordova 1.3.0。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.h

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 1.2.0 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)。

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     MainViewController.xib
    
  5. 將所有 MainViewController 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/phonegap-1.3.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-1.2.0.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 phonegap-1.3.0.js 檔案。

  8. PhoneGap.plist 檔案中的 Plugins 下新增一個項目。索引鍵是 com.phonegap.battery,值是 PGBattery

  9. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼整合到新的 AppDelegate 檔案中。

將 1.1.0 專案升級至 1.2.0

  1. 安裝 Cordova 1.2.0。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.h

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 1.1.0 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)。

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     MainViewController.xib
    
  5. 將所有 MainViewController 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/phonegap-1.2.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-1.1.0.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 phonegap-1.2.0.js 檔案。

  8. PhoneGap.plist 檔案中的 Plugins 下新增一個項目。索引鍵是 com.phonegap.battery,值是 PGBattery

  9. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼整合到新的 AppDelegate 檔案中。

將 1.0.0 專案升級至 1.1.0

  1. 安裝 Cordova 1.1.0。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.h

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 1.0.0 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)。

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     MainViewController.xib
    
  5. 將所有 MainViewController 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/phonegap-1.1.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-1.0.0.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 phonegap-1.1.0.js 檔案。

  8. PhoneGap.plist 檔案中的 Plugins 下新增一個項目。索引鍵是 com.phonegap.battery,值是 PGBattery

  9. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼整合到新的 AppDelegate 檔案中。

將 0.9.6 專案升級至 1.0.0

  1. 安裝 Cordova 1.0.0。

  2. 在您的專案中,備份 AppDelegate.mAppDelegate.h

  3. 建立新專案。您會需要此新專案中的某些資產。

  4. 將這些檔案從新專案複製到您基於 0.9.6 的專案磁碟目錄中,取代任何舊檔案(請先備份步驟 2 的檔案)。

     AppDelegate.h
     AppDelegate.m
     MainViewController.h
     MainViewController.m
     MainViewController.xib
    
  5. 將所有 MainViewController 檔案加入您的 Xcode 專案中。

  6. 將新專案中的 www/phonegap-1.0.0.js 檔案複製到 www 目錄,並刪除 www/phonegap-0.9.6.js 檔案。

  7. 更新 www/index.html 檔案(以及任何其他包含指令碼參考的檔案)中的 Cordova 指令碼參考,使其指向新的 phonegap-1.0.0.js 檔案。

  8. PhoneGap.plist 檔案中的 Plugins 下新增一個項目。索引鍵是 com.phonegap.battery,值是 PGBattery

  9. 將您在備份的 AppDelegate.hAppDelegate.m 中擁有的任何專案特定程式碼整合到新的 AppDelegate 檔案中。