十一. 工具

十一. 工具

分析特定任务时还须要特定的工具,这些任务包括:html

  • 识别和验证无障碍标签;
  • 从资源利用率的角度分析应用的运行时执行性能;
  • 分析网络和CoreData的使用状况;
  • 分析渲染性能;
  • 经过自动化代码执行用户交互过程;
  • 分析崩溃日志

11.1 Accessibility Inspector

Xcode->Developer Tools ->Accessibility Inspector; 使用Accessibility Inspector 检测ios APP中控件元素层级结构; 参考文章:http://blog.csdn.net/CC1991_/article/details/70158723,https://www.jianshu.com/p/61a742805ab7ios

11.2 Instruments

Xcode->Developer Tools -> Instruments; 选择模板后按住Alt/Option键,Choose按钮会变为Profile按钮,按下便可开始分析。 官方文档:https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/InstrumentsUserGuide/index.html#//apple_ref/doc/uid/TP40004652-CH3-SW1git

11.2.1 使用Instruments

用Instruments分析应用、改进性能包括如下步骤: (1)打开一个模板。你可使用预先定义好的模板,也能够建立一个空白的模板。 (2)添加多个Instrument,这一步是可选的。 (3)分析应用,这可能须要启动应用。 (4)收集数据。 (5)分析数据。 (6)若有必要,更新应用。 (7)重复上述步骤直到应用性能使人满意。github

输入图片说明

(1)Library图标(打开instrument列表以下图)。 (2)Target选择器(能够选择单独的应用或设备;能够只选择在我的Mac OS X设备上经过开发者证书安装的应用)。 (3)记录、暂停、恢复和中止按钮。 (4)检查器面板。 (5)检查器:记录设置、显示设置以及扩展详情。 (6)instrument选择器。 (7)按时间排列的记录图。 (8)展现已选择分析项详情的详情面板。服务器

选择分析项窗口: 输入图片说明网络

11.2.2 Activity Monitor 活动监视器

输入图片说明

  • % CPU :消耗CPU资源
  • CPU Time:运行时占用CPU时间
  • Real Memory Usage:占用内存

11.2.3 Allocations 内存分配

被遗弃的内存指的是已经分配但再也不使用的内存空间;这部分空间仍然能够回收。 遵循如下步骤来查找被遗弃的内存: (1)选择Allocations模板来分析应用。 (2)肯定要测试的初始状态。 (3)进行操做,让应用从初始状态到另外一个状态,而后返回。 (4)选在Mark Generation按钮来产生一个堆的快照。 (5)屡次重复步骤3和步骤4。 (6)分析快照中捕获的对象,以便定位被遗弃的内存。app

输入图片说明

Generation A、B为快照,Growth每一个快照增加的内存,点击<non-object>的箭头来查看下图详情 输入图片说明ide

在检查器面板查看完整的栈追踪。工具

11.2.4 Leaks 内存泄露

输入图片说明

详情面板列出那些对象发生泄露,以及泄露的数量和泄露内存的大小。 检查器面板中的扩展详情界面展现当时的栈追踪,有助于定位泄露缘由。性能

11.2.5 Connections 网络

调试网络使用状况时须要的内容,其中包括远程服务器地址、传输数据量、请求往返的平均时长和最短期,等等; 输入图片说明

11.2.6 时间分析器

输入图片说明

参考文章:https://www.jianshu.com/p/9ac281228de2

11.3 Xcode 视图调试器

输入图片说明

11.4 PonyDebugger (2014年中止更新)

参考文章:https://github.com/square/PonyDebugger, https://www.jianshu.com/p/441fe2abae5a, https://www.jianshu.com/p/1c64e0a1806d

11.5 Charles

参考文章:http://blog.devtang.com/2015/11/14/charles-introduction/

相关文章
相关标签/搜索