利用Xcode工具为iOS开发者完善应用程序
Xcode包含一系列工具,这些工具可以帮助开发者分析、调试和编译他们的应用程序。每个开发人员应该使用这些工具,以帮助他们的应用程序获得被公认的最佳机会。
如果您有一个应用程序打算提交到苹果专卖店,首要的也是必须的,您要确保它健壮。也就是说,它不会崩溃、泄露秘密或使用太多的内存。它可以运行在很恶劣的或不存在的网络环境中,并且可以随时响应用户的请求。在您提交您的应用程序之前,您应该把每个单元的测试计划集合在一起,然后有效地运行最新版本的Xcode工具套件。
现在我将介绍这些工具,但是因为种类太多,而且每一个工具都很值得介绍,所以我就没有办法讲的太细致。文章结尾的参考文献将为您提供更多相关资料的指导。
基本工具
当您开发研究您的应用程序时,您应该运行两个工具,这两个工具是Clang静态分析器和调试器。您运行静态分析器的目的是防止错误的产生,运行调试器的目的是逐步执行代码找到错误。
静态分析器
从Xcode菜单栏(快捷键Shift+B)选择Analyze选项以运行静态分析器。分析仪开启运行后,一些潜在隐含的问题会出现在导航窗格中的列表中。选择其中一个,然后在编辑器窗格中查看代码源。图A显示了一个内存泄漏,因为,当responseData实例变量分配时,它不但因为分配而分配,而且会保存。
图 A
解决办法是替换赋值方法,不增加保留计数:
self.responseData = [NSMutableData dataWithCapacity:[data length]];
调试器
调试器在任何一种编程环境中都是一种最重要的开发工具。Xcode为您提供选择两种调试器,即可靠的GDB和更新、更快的LLDB。
在Xcode菜单栏中选择“编辑”以运行调试器,会出现下面的对话框。(如图B所示)
图 B
选择调试计划将关闭优化编译器,然后在项目的生成设置打开一个调试宏指令。
在您运行您的应用程序之前,您应该从“视图”菜单中选择调试区|显示调试区设置断点,并显示在源代码编辑器的调试区域的下面。
如图C所示,调试区有一个局部变量窗格,使您可以逐步执行代码时检查变量在内存中的值。
图 C
Instruments仪器
仪器是指Xcode IDE提供的一些分析工具,这些工具用来进行调试、性能分析和测试。使用工具,您可以配置文件:
一般及堆内存的使用情况,并检查内存泄漏
实时的CPU、内存、磁盘、能源和网络使用情况
线程,网络和能源使用
I / O系统和线程活动
文件I / O和核心数据活动
被称作僵尸的“过度释放”的对象
应用程序在一个例程中花费的时间量
图形库活动
您还可以自动执行用户任务,您可以通过拖动工具从库中的工具列表在空白模板创建自己的自定义分析器。例如,时间活动可以在内存使用上进行可以交叉引用。
在Xcode菜单栏选择 “Open Developer Tool | Instruments”,打开仪器模板(图D所示),或从产品菜单中选择“Profile”,来分析您当前的项目。
图 D
一般情况下,您应该选择一个iOS模板配置文件连接的iOS设备。然而,一些可能是有用的工具,这取决于您的应用程序,只能和模拟器一起工作。这些措施包括僵尸,文件系统和核心数据工具。
从“工具”“帮助”菜单中选择“工具用户指南”。也可在网上找到,下面有URL参考。
高级工具
苹果还提供了一些先进的工具,必须被下载在Xcode之外。选择Xcode菜单中的Open Developer Tool | More Developer Tools,Safari浏览器将打开开发人员网站。您将会看到一个下载列表。您可以选择硬件I / O、音频工具、构建的命令行,等等。
下载并安装最新版本的硬件I / O工具,这套工具包括网络链接调节装置。(如图E所示)
图 E
打开“系统首选项”,在“其它”一栏中,您会找到网络链接调节装置。将您的网络配置到3G,有损网络,如上所述,然后打开调节装置。现在,您可以在模拟器中的工具分析您的应用程序,看看它是如何处理有损网络的。