Xcode概览:运行您的应用

suiling· 2014-12-12
本文来自 苹果开发者中心 ,作者 suiling

58.jpg

本文由CocoaChina翻译组成员星夜暮晨(博客)翻译自苹果Xcode Overview:Run Your App,CocoaChina校对,敬请勘误。

要编译并运行您的 iOS 或 Mac 应用,请在工作区的工具栏上选择一个编译方案,然后选择运行目标,接着单击 Run 按钮。单击 Stop 按钮即可使应用退出。

XC_O_SchemeMenuWithCallouts_2x.png

如果您要运行 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 的运行环境。

SchemeMenu_2x.png

Scheme菜单可以让您自由组合编译方案和运行目标,但是这两个设置是截然不同的。编译方案和运行目标并没有从属关系。在上述的截图当中,编译方案是 Adbenture iOS,运行目标是 iPhone Retina (4-inch) 模拟环境。其结果是 Adventure iOS 编译方案生成一个在模拟的 iOS 设备上运行的 iOS 程序。如下图所示,同一个编译方案可以在不同的运行目标上运行,比如说在模拟的 iPad 或在真机上运行。

NewRunDestination_2x.png

运行您的应用

单击在工作区工具栏上的 Run 按钮来编译、连接并执行您的代码。如果应用生成成功,Xcode 将会运行它并启动调试会话程序。Xcode是在 iOS 模拟器还是在真机上运行 iOS 应用取决于您的运行目标。

AdventureLaunchediPhone_2x.png

Xcode 在您的开发 Mac 环境上启动 Mac 应用。

AdventureLaunchedMac_2x.png

Xcode 将会在问题导航器中显示所有遇到的错误或警告。问题导航器可以通过单击导航栏上的(XG_NavArea_Issue_icon_2x.png)来打开。如果在编译或者连接阶段出现错误导致进程暂停,那么 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。在设备管理器中,选择您想要在对象菜单中添加或者移除的设备。然后选择管理器窗口左下方的配置按钮(XC_O_devices_window_config_button_2x.png)选择 Show in Run Destinations Menu。旁边的复选标记将表明该设备或者模拟器是否会显示在运行目标菜单中。

XC_O_devices_resizeable_menu_2x.png

编辑、创建以及管理编译方案

要编辑编译方案,在编译方案菜单中选择 Edit Scheme。编译方案配置对话框的左边栏列出了编译方案能够执行的操作。您可以修改每个操作的设置。在截图中,Run 操作被修改为在 Xcode 运行应用时模拟 Mexico City 这个地点。

52.png

您可以修改编译方案以让其执行下述操作:

  • 生成多个目标

  • 在某个操作执行前或执行后运行某个脚本

  • 在某个操作执行前或执行后发送邮件

  • 使用内存管理诊断来运行应用

  • 为某个操作设置为调试(debug)或发布(release),例如下面这个截图所示的 Run 操作。

53.png

创建新的编译方案的最便捷方式是单击编译方案复制按钮,这个按钮使用可用的编译方案作为模板来让您可以重命名、编辑以及保存一个新的编译方案。如果您创建了一个编译方案,就可以通过单击位于编译方案配置对话框中的管理方案按钮。或者如下面截图所示的通过选择编译方案菜单中的 Manage Schemes。您可以重命名编译方案,也可以重新组织其在编译方案菜单中显示的方式。您也同样可以指定该编译方案是否可以在菜单中显示,指定该编译方案应该被存储在项目或者是工作区的何种位置,以及指定该编译方案是否可以被共享,比如说团队成员从源代码库中访问项目。您可以单击 Autocreate Schemes Now 按钮来让 Xcode为没有编译方案的对象自行创建编译方案。

55.png


要获得创建、编辑以及管理编译方案的详细指南,请在编译方案配置对话框中按住 control 单击任何区域,或者参阅Scheme Editor Help