版本記錄
版本號(hào) | 時(shí)間 |
---|---|
V1.0 | 2018.06.10 |
前言
我們?cè)谧鯽pp的時(shí)候,不是做完功能就結(jié)束了,很多時(shí)候是需要進(jìn)行檢查和優(yōu)化的媳禁,而xcode自帶了一個(gè)很好的檢查工具羔挡,可以檢測(cè)內(nèi)存泄漏。還可以查看哪一個(gè)方法比較耗時(shí)券犁。還可以檢測(cè)離屏渲染等等,隨后的幾篇我們就說(shuō)一下這個(gè)工具的使用。感興趣的可以看這幾篇纽绍。
1.INSTRUMENTS調(diào)試工具的使用(一)
2.INSTRUMENTS調(diào)試工具的使用(二)
3.INSTRUMENTS調(diào)試工具的使用(三)
4.INSTRUMENTS調(diào)試工具的使用(四)
5.INSTRUMENTS調(diào)試工具的使用(五)
6.INSTRUMENTS調(diào)試工具的使用(六)
7.INSTRUMENTS調(diào)試工具的使用(七)
8.INSTRUMENTS調(diào)試工具的使用(八)
9.INSTRUMENTS調(diào)試工具的使用(九)
10. INSTRUMENTS調(diào)試工具的使用(十)
About Instruments - 關(guān)于Instruments
Instruments是一款強(qiáng)大而靈活的性能分析和測(cè)試工具,它是Xcode工具集的一部分势似。 它旨在幫助您分析OS X和iOS應(yīng)用程序拌夏,進(jìn)程和設(shè)備僧著,以便更好地理解和優(yōu)化其行為和性能。 將儀器從應(yīng)用開(kāi)發(fā)流程的開(kāi)始整合到您的工作流程中障簿,可以幫助您在開(kāi)發(fā)周期的早期發(fā)現(xiàn)問(wèn)題盹愚,從而為您節(jié)省時(shí)間。
在Instruments
中站故,您可以使用稱為instruments
的專用工具隨時(shí)跟蹤應(yīng)用程序皆怕,進(jìn)程和設(shè)備的不同方面。 Instruments在分析時(shí)收集數(shù)據(jù)西篓,并將結(jié)果詳細(xì)顯示給您進(jìn)行分析端逼。
與其他性能和調(diào)試工具不同,Instruments
允許您收集廣泛不同類型的數(shù)據(jù)并將其并排查看污淋。 這使得識(shí)別可能被忽略的趨勢(shì)更容易顶滩。 例如,您的應(yīng)用可能會(huì)出現(xiàn)由多個(gè)開(kāi)放式網(wǎng)絡(luò)連接導(dǎo)致的大量?jī)?nèi)存增長(zhǎng)寸爆。 通過(guò)一起使用Allocations
和Connections
工具礁鲁,您可以識(shí)別未關(guān)閉的連接,從而實(shí)現(xiàn)快速的內(nèi)存增長(zhǎng)赁豆。
通過(guò)有效使用儀器仅醇,您可以:
- 檢查一個(gè)或多個(gè)應(yīng)用程序或進(jìn)程的行為
- 檢查設(shè)備特定功能,例如Wi-Fi和藍(lán)牙
- 在模擬器或物理設(shè)備上執(zhí)行分析
- 創(chuàng)建自定義
DTrace
工具來(lái)分析系統(tǒng)和應(yīng)用行為的各個(gè)方面 - 追蹤源代碼中的問(wèn)題
- 對(duì)您的應(yīng)用進(jìn)行性能分析
- 在應(yīng)用程序中查找內(nèi)存問(wèn)題魔种,例如泄漏析二,廢棄的內(nèi)存和僵尸
- 找出優(yōu)化您的應(yīng)用以獲得更高能效的方法
- 執(zhí)行一般的系統(tǒng)級(jí)故障排除
- 將儀器配置保存為模板
雖然它嵌入在Xcode中并可能與其一起使用,但Instruments
是一個(gè)單獨(dú)的應(yīng)用程序节预,可根據(jù)需要獨(dú)立使用叶摄。
The Instruments Workflow - Instruments工作流
Instruments
看起來(lái)像是一個(gè)復(fù)雜的應(yīng)用程序,它可以用來(lái)收集各種有關(guān)您的應(yīng)用程序的有用信息安拟,并幫助您診斷和解決問(wèn)題蛤吓。 但是,整個(gè)儀器工作流程相對(duì)簡(jiǎn)單(見(jiàn)圖2-1)糠赦。
在較高層面上会傲,它由以下幾個(gè)主要階段組成:
- 設(shè)置包含所需儀器和設(shè)置的跟蹤文檔。
- 將設(shè)備和應(yīng)用定位到配置文件拙泽。
- 剖析應(yīng)用程序淌山。
- 分析在分析過(guò)程中捕獲的數(shù)據(jù)。
- 修復(fù)源代碼中的任何問(wèn)題顾瞻。
1. Know When to Use Instruments - 知道何時(shí)使用Instruments
在使用Xcode測(cè)試您的應(yīng)用程序時(shí)泼疑,請(qǐng)參閱調(diào)試導(dǎo)航器儀表(Figure 2-2)
,然后再進(jìn)入儀器朋其。 這些儀表提供有關(guān)您的應(yīng)用程序的CPU王浴,內(nèi)存,電量使用情況等的高級(jí)信息梅猿。 他們通常會(huì)提供您需要的所有信息來(lái)提高性能并快速解決常見(jiàn)問(wèn)題氓辣。 當(dāng)您需要執(zhí)行更詳細(xì)的分析時(shí)使用Instruments
。
About This Document - 關(guān)于此篇文檔
為了幫助您快速找到所需的信息袱蚓,本文檔分為幾部分钞啸,重點(diǎn)關(guān)注儀器的特定方面。
- 第一個(gè)主要部分著重于使用Instruments應(yīng)用程序喇潘。 它涵蓋諸如創(chuàng)建文檔体斩,找到所需的工具,分析應(yīng)用程序颖低,分析數(shù)據(jù)等等絮吵。 去這里找出如何執(zhí)行一般任務(wù)。
- 后面的部分涵蓋更多專業(yè)化的任務(wù)忱屑,例如提升性能蹬敲,解決內(nèi)存問(wèn)題以及延長(zhǎng)電池壽命。
- 最后的部分為單個(gè)儀器和模板提供參考指南莺戒,以及其他資源和參考資料伴嗡。
Prerequisites - 先決條件
1. Background Knowledge - 背景知識(shí)
在使用Instruments之前,您應(yīng)該對(duì)Xcode的工作方式(請(qǐng)參閱Xcode Overview)以及關(guān)鍵應(yīng)用程序開(kāi)發(fā)概念(如構(gòu)建和運(yùn)行應(yīng)用程序以及配置設(shè)備)有深入的了解从铲。
您還應(yīng)該熟悉要執(zhí)行的分析類型的核心概念瘪校。例如,如果您正在檢查應(yīng)用程序的內(nèi)存問(wèn)題名段,那么您應(yīng)該了解一些有關(guān)內(nèi)存管理和潛在內(nèi)存問(wèn)題的信息阱扬,例如泄漏和僵尸。如果您正在檢查應(yīng)用程序的性能問(wèn)題伸辟,則應(yīng)了解CPU和線程利用率价认。如果您試圖解決電池問(wèn)題,您應(yīng)該了解可能對(duì)功耗產(chǎn)生負(fù)面影響的各種事物自娩,例如顯示屏亮度用踩,網(wǎng)絡(luò)接口(GPS,藍(lán)牙忙迁,Wi-Fi)使用率和計(jì)時(shí)器使用率等脐彩。
本指南中提供了有關(guān)這些主題和其他主題的一些背景信息。其他資源的鏈接位于:
2. System Requirements - 系統(tǒng)要求
Instruments
隨Xcode一起安裝姊扔。 如果您還沒(méi)有安裝Xcode惠奸,請(qǐng)從Mac App Store下載。
如果您打算在iOS設(shè)備上剖析應(yīng)用恰梢,則需要配置設(shè)備佛南。 請(qǐng)參閱Launching Your App on Devices
梗掰。
注意:Instruments可用于Xcode 3.0及更高版本,并且在OS X v10.5及更高版本中受支持嗅回。Instruments可以配置運(yùn)行iOS 6或更高版本的iOS設(shè)備及穗。
參考文章
后記
本篇主要從官方的角度解析了Instruments,進(jìn)行了簡(jiǎn)單介紹绵载。感興趣的給個(gè)贊或者關(guān)注~~~