本文由CocoaChina翻譯組成員星夜暮晨(博客)翻譯自蘋果Xcode Overview:Run Your App,CocoaChina校對,敬請勘誤。
要編譯並運行您的 iOS 或 Mac 應用,請在工作區的工具欄上選擇一個編譯方案,然後選擇運行目標,接著單擊 Run 按鈕。單擊 Stop 按鈕即可使應用退出。
如果您要運行 iOS 應用,Xcode 便會通過 iOS 模擬器或者是連接到 Mac 的 iOS 設備來啟動它。而如果您要運行 Mac 應用的話,Xcode 會直接在 Mac 上運行它。
選擇一個Scheme來生成應用
編譯方案(scheme)是一系列設置的集合,它指定構建項目的對象、所使用的編譯配置,以及當應用啟動時需要的運行環境。當您打開一個現有項目(或者創建一個新的項目)時,Xcode 將會自行為每個對象創建一個編譯方案。默認的編譯方案名稱和您項目的名稱相同,並且包含了五個運行操作的設置項:
運行應用
針對對象的運行單元測試
描述應用的性能特性的簡介
為代碼執行靜態分析
歸檔應用應用為分發做准備,比如說分發給測試者或者上傳到 App Store
每項操作都能生成應用,並將其作為可執行項目來運行。要選擇編譯方案,請使用在 Xcode 工作區工具欄上的Scheme menu。(您可以同樣使用編譯方案菜單來選擇運行目標。)
選擇一個目標來運行應用
當您生成應用的時候,運行目標(destination)將決定當應用生成完畢後其在何處運行。對於 Mac 應用來說,運行目標就是生成應用的這台 Mac 電腦。對於 iOS 應用來說,運行目標可以是連接至 Mac 的已配對 iOS 設備,也可以是 iOS 模擬器。iOS 模擬器和 iOS SDK 一起伴隨著 Xcode 安裝到您的 Mac 上,它可以在 Mac 上運行,並且可以模擬 iPhone 或者 iPad 的運行環境。
Scheme菜單可以讓您自由組合編譯方案和運行目標,但是這兩個設置是截然不同的。編譯方案和運行目標並沒有從屬關系。在上述的截圖當中,編譯方案是 Adbenture iOS,運行目標是 iPhone Retina (4-inch) 模擬環境。其結果是 Adventure iOS 編譯方案生成一個在模擬的 iOS 設備上運行的 iOS 程序。如下圖所示,同一個編譯方案可以在不同的運行目標上運行,比如說在模擬的 iPad 或在真機上運行。
運行您的應用
單擊在工作區工具欄上的 Run 按鈕來編譯、連接並執行您的代碼。如果應用生成成功,Xcode 將會運行它並啟動調試會話程序。Xcode是在 iOS 模擬器還是在真機上運行 iOS 應用取決於您的運行目標。
Xcode 在您的開發 Mac 環境上啟動 Mac 應用。
Xcode 將會在問題導航器中顯示所有遇到的錯誤或警告。問題導航器可以通過單擊導航欄上的()來打開。如果在編譯或者連接階段出現錯誤導致進程暫停,那麼 Xcode 並不會運行您的代碼。
在iOS模擬器上運行應用
iOS 模擬器允許您模擬一系列的 iPhone 和 iPad 設備,也可以模擬不同版本的 iOS 操作系統。您可以用鍵盤以及觸控板來與 iOS 模擬器交互,來模擬單擊、設備旋轉,以及其他操作。例如,您可以使用 iOS 模擬器中的 Hardware 菜單來:
向左或向右旋轉模擬器
模擬用戶搖動設備
給前台應用發送一個模擬的內存不足警告
作為在真機測試前的初始工具,iOS 模擬器是您在整個開發流程中測試應用原型好工具之一。雖然您可以在 iOS 模擬器中測試您應用的基本操作,但是 iOS 模擬器作為一個測試平台仍然是有許多限制。在開發應用的過程中,真機測試是必不可少的。
要了解關於更多使用模擬器的消息,請參閱iOS Simulator User Guide。
在真機上運行應用
開發過程中,要在真機(iPad、iPhone或者 iPod touch)上運行 iOS 應用,需要如下四個條件:
設備需要連接至 Mac
您是蘋果開發者項目的成員
您擁有一個開發者項目的有效簽名證書
設備被開發者項目使用,且已被配置為可開發
如果您有條件沒有滿足,那麼 Xcode 將會引領您進行修復,並且通常可以添加簽名身份以及設備配置文件。
開發過程中,要在真機(iPad、iPhone或者 iPod touch)上運行 iOS 應用,設備必須連接到 Mac,並且該設備必須被蘋果認證為可開發。如果您的 Mac 應用使用特定的 App 技術--如 iCloud,Game Center以及 In-App Purchase,那麼您的 Mac 必須被認證。
蘋果實現了一個基本的安全模型來保護用戶數據,並且保護您的應用程序以防其在不知情的情況下被修改或被分發。在整個開發過程當中,您將創建資產(assets)並輸入信息,讓蘋果用來驗證識別您身份、您的設備以及您的應用。這些資產包括配置文件,用來確定您的開發設備。
要獲得一個設備的配置文件,您需要成為蘋果開發者計劃的成員並且獲得相應的簽名身份。關於這方面的詳細信息,請參閱App Distribution Quick Start。
為運行目標(Run Destination)選擇設備
當您向 Mac 中插入新設備時,該設備的名稱和正在運行的 iOS 版本都會作為運行目標而出現在編譯方案菜單中。選擇您的設備作為運行目標,然後單擊 Run 按鈕來在設備上生成並運行應用。
創建自定義模擬器配置
選擇 Window > Devices 來打開設備管理器。單擊管理器窗口左下角的添加按鈕(+)。在出現的對話框中,輸入您自定義模擬器配置的名稱,然後選擇一個 iOS 版本。單擊 Create ,這樣您的自定義模擬器配置就被添加到模擬器列表中了。默認情況下,新的配置出現在運行目的目標菜單中。
在運行目標菜單中顯示模擬器或真機
選擇 Window > Devices。在設備管理器中,選擇您想要在對象菜單中添加或者移除的設備。然後選擇管理器窗口左下方的配置按鈕()選擇 Show in Run Destinations Menu。旁邊的復選標記將表明該設備或者模擬器是否會顯示在運行目標菜單中。
編輯、創建以及管理編譯方案
要編輯編譯方案,在編譯方案菜單中選擇 Edit Scheme。編譯方案配置對話框的左邊欄列出了編譯方案能夠執行的操作。您可以修改每個操作的設置。在截圖中,Run 操作被修改為在 Xcode 運行應用時模擬 Mexico City 這個地點。
您可以修改編譯方案以讓其執行下述操作:
生成多個目標
在某個操作執行前或執行後運行某個腳本
在某個操作執行前或執行後發送郵件
使用內存管理診斷來運行應用
為某個操作設置為調試(debug)或發布(release),例如下面這個截圖所示的 Run 操作。
創建新的編譯方案的最便捷方式是單擊編譯方案復制按鈕,這個按鈕使用可用的編譯方案作為模板來讓您可以重命名、編輯以及保存一個新的編譯方案。如果您創建了一個編譯方案,就可以通過單擊位於編譯方案配置對話框中的管理方案按鈕。或者如下面截圖所示的通過選擇編譯方案菜單中的 Manage Schemes。您可以重命名編譯方案,也可以重新組織其在編譯方案菜單中顯示的方式。您也同樣可以指定該編譯方案是否可以在菜單中顯示,指定該編譯方案應該被存儲在項目或者是工作區的何種位置,以及指定該編譯方案是否可以被共享,比如說團隊成員從源代碼庫中訪問項目。您可以單擊 Autocreate Schemes Now 按鈕來讓 Xcode為沒有編譯方案的對象自行創建編譯方案。
要獲得創建、編輯以及管理編譯方案的詳細指南,請在編譯方案配置對話框中按住 control 單擊任何區域,或者參閱Scheme Editor Help。