分析特定任务时还须要特定的工具,这些任务包括:html
Xcode->Developer Tools ->Accessibility Inspector; 使用Accessibility Inspector 检测ios APP中控件元素层级结构; 参考文章:http://blog.csdn.net/CC1991_/article/details/70158723,https://www.jianshu.com/p/61a742805ab7ios
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
用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)展现已选择分析项详情的详情面板。服务器
选择分析项窗口: 网络
被遗弃的内存指的是已经分配但再也不使用的内存空间;这部分空间仍然能够回收。 遵循如下步骤来查找被遗弃的内存: (1)选择Allocations模板来分析应用。 (2)肯定要测试的初始状态。 (3)进行操做,让应用从初始状态到另外一个状态,而后返回。 (4)选在Mark Generation按钮来产生一个堆的快照。 (5)屡次重复步骤3和步骤4。 (6)分析快照中捕获的对象,以便定位被遗弃的内存。app
Generation A、B为快照,Growth每一个快照增加的内存,点击<non-object>的箭头来查看下图详情 ide
在检查器面板查看完整的栈追踪。工具
详情面板列出那些对象发生泄露,以及泄露的数量和泄露内存的大小。 检查器面板中的扩展详情界面展现当时的栈追踪,有助于定位泄露缘由。性能
调试网络使用状况时须要的内容,其中包括远程服务器地址、传输数据量、请求往返的平均时长和最短期,等等;
参考文章:https://www.jianshu.com/p/9ac281228de2
参考文章:https://github.com/square/PonyDebugger, https://www.jianshu.com/p/441fe2abae5a, https://www.jianshu.com/p/1c64e0a1806d
参考文章:http://blog.devtang.com/2015/11/14/charles-introduction/