在Xcode中管理你的工作流程
在你看完了教程 你的第一个iOS应用 的时候,你在Xcode的工作区窗口中执行你主要的工作流程的任务. 一个单独的Organizer(组织者)窗口可以让你执行一些辅助任务,例如阅读文档,调试设备,以及准备将你的程序提交到App Store上.
工作区的特征有一个 导航器区域, 一个编辑器区域, 一个实用工具区域. 在你的第一个iOS应用中, 你使用了导航器区域来选择文件并编辑. 你实用了编辑器区域来编辑源文件并且设计用户界面组件. 在实用工具中,你设置了标签的文本和按钮的标题.
自定义你的工作区
你可以隐藏在这一系列的组合中的导航器,编辑器,实用工具区域. 在你的第一个iOS应用中,你使用了工具栏的视图选择器(View selector)来隐藏和显示实用工具区域. 隐藏实用工具区域可以让你看到更大的编辑器区域, 显示实用工具区域可以让你察看并选择各种对象的属性.
你可以用其他的方式来自定义工作区, 例如 通过使用Safari的标签(或者说选项卡)的样式在工作区窗口上实现一个多重的,特定的工作流程布局. 比如,你可以使用一个标签来查看头文件(.h),另一个标签则查看实现文件(.m).
你还可以创建多个工作区窗口. 每一个标签或者工作区窗口都可以单独进行自定义.
在iOS模拟器中测试你的应用
当你要运行或调试你的应用时,你可以在Mac上使用iOS模拟器来运行它. 你就可以弄明白你的应用是否以你希望的方式运行.
调试环境内置到了Xcode中. 当你的程序正在运行的时候, 调试导航器显示着一个堆栈跟踪,你可以在调试的时候 去展开或收起这个堆栈页面. 在你单步调试过程中,你可以锁定到一个单一的线程中,并且可以关注着这个指定线程的执行.
在一个iOS设备中测试你的应用
尽管你可以在iOS模拟器中测试你应用的基本行为,但是你还是应该去在和Mac已经连接的设备上运行这个应用. 设备上提供了最终的测试环境,你可以在你的设备上观察你应用的行为. 这样测试是必需的,因为iOS模拟器不会运行在设备上所运行的所有线程. 你最好应该在所有的iOS设备以及你希望支持的iOS版本中进行测试你的应用.
如果你已经加入了iOS开发者计划,你现在就可以开始在设备上运行,测试 并调试你的应用. (在路线图前面的 搭建 中已经包含了如何登记为一个iOS开发者的说明了.)
要在设备上运行你的应用, 你必须从苹果获取一个开发者证书. 你的应用必须是加密认证过的 才能在设备上运行, 并且这个证书是用来签名你的应用. 你可以通过Xcode 组织者(Organizer)窗口来获取这个证书.
注意: 如果你正在Xcode的文档管理器(documentation organizer)中阅读下面的说明, 就在这个页面的任何地方按住Control键并点击左键, 然后从上下文菜单中选择. 这个页面会在默认浏览器中打开. 在你做下面步骤的时候,当点击设备管理器(Devices organizer)后, 设备管理器会替换掉文档管理器的这个页面的,因此在浏览器中有这个说明就会对你很有帮助. 当你已经完成这些所说明的步骤的时候, 如果你想继续在Xcode种阅读这个页面, 那么就在组织者(Organizer)窗口的工具栏上点击Documentation即可.
要在一个设备上运行应用,你还必须在设备上安装一个已经关联的provisioning profile文件. 这个provisioning profile文件通过识别你的个人信息(通过你的开发者证书)和你的设备(通过列出它的唯一设备的标识).
当有了一个开发者证书和一个provisioning profile的时候,就可以在设备上运行你的应用了. 在你的应用运行在设备上的时候, 你还是可以使用Xcode调试和性能分析工具.
快速查找Xcode帮助
在你进行应用开发的过程中,你需要在Xcode中完成很多的操作. 如果你需要查看这个关于一个任务的帮助, 给你提供了一个非常人性化的工作流程帮助,你可以直接从Xcode的用户界面来访问. 这个帮助包括了 简单的流程步骤, 视频或者截图, 以及简明的描述 可以让你很快的回到工作中去.
改善你应用的性能
要确保你最终发布的应用有最好的用户体验, 用Xcode上的性能分析工具来分析你运行在iOS模拟器或者一个设备上应用的性能.这个工具会收集你正在运行的应用的数据 并且 以图形时间线(graphical timeline)的方式来显示它.
你可以收集关于你应用内存使用,磁盘活动情况,网络活动情况 以及图形性能 以及其他测量数据. 通过可以在一起查看这些数据,你就可以在不同方面来分析你应用的性能,以便来改善它. 你可以自动化测试你应用的用户界面元素. 你还可以取比较你的应用在不同时间中的行为,这样可以确定是不是通过刚才的改变提高了你应用的性能了.
管理你应用的版本
如果因为你更改了代码导致程序执行错误, 那么Xcode的快照(snapshot)可以很容易的恢复你的工程,甚至对一个已经删除的工程,也可以恢复到之前的状态. 一个快照可以将你工程的当前状态保存到硬盘上,并为日后需要恢复时所使用.Xcode的工程管理器(Projects organizer)中列出了你的所有快照.
你可以在任何时候来手动地创建一个快照,而且你还可以设置Xcode在一些其他情况下来自动创建快照,例如在每次编译之前或者在执行每次查找和替换操作之前.
(如果你是和程序员团队在一起工作的话,那么源代码控制管理(Source Control Management, SCM)还可以帮助你来协调工作(coordinate efforts)).一个源代码控制管理系统在硬盘上给每一个文件保存着多个版本, 在源代码控制管理的仓库(repository)中存储着每一个文件的每一个版本的元数据.
Xcode支持两种流行的源代码控制管理系统: Git 和 Subversion. Xcode包含着一个版本编辑器可以让你很容易地从这两种系统的任何一种中来比较仓库中所存储的每一个文件的每一个版本.如果你发现了在你的代码中有一些Bug,那么你可以与这个文件的最新版本进行比较,还可以和已经正常工作的早期版本进行比较,来帮助你在源码中没有问题发生.
分配和发布你的应用
在你的应用发表并且发布到App Store之前,Xcode可以很容易地将你的应用分配给其他测试人员.在Xcode中使用方案编辑器来创建你应用的归档,就可以开始分配应用了.你接下来就可以在Xcode种使用 归档管理器(Archives organizer)将你的应用共享给其他的测试人员了.
当你已经准备要发布你的应用的时候,还需要使用 归档管理器 来执行一个非常重要的测试,这个测试是App Store发布前所必须要完成的.当通过这个测试的时候,就可以确保你的应用可能会审核地快一些. 接下来你将会从Xcode中直接将你的应用提交到App Store上.
你将会在线路图随后的文章 "准备提交App Store" 中学习到更多的分配和发布你的应用的知识.