1. 程式人生 > >Android效能分析工具常用匯總

Android效能分析工具常用匯總

Android效能分析工具整理彙總

把做Android開發以來碰到的一些不錯的效能分析工具做個整理彙總...

Debug GPU Overdraw

型別:系統自帶功能UI渲染檢測功能(開啟Settings,然後到 Developer Options -> Debug GPU Overdraw 選擇 Show overdraw areas,手機系統設定中文的孩紙,自行對照翻譯進去哈)
作用:用來檢測UI的重繪次數,開發者可以用來優化UI的效能。
使用心得:檢測UI效能的利器,對於開發者做UI優化的幫助挺大的。因為大量的重繪容易讓app造成卡頓或者直接導致丟幀的現象。開發者熟悉View的繪製原理可以結合對一些佈局或者自定義控制元件做相應的優化。諸如:在ListView或GridView裡面的item使用layout_weight設定就會造成多餘重繪。其他情況還有很多,不一一例舉。至於怎麼用,可以自行Google

Profile GPU Rendering

型別:系統自帶功能UI渲染檢測功能(開啟Settings,然後到 Developer Options -> Profile GPU Rendering. 選擇 On screen as bars )
作用:用來檢測UI繪製幀的速率和耗時,同樣開發者可以用來優化UI的效能。
使用心得:跟Debug GPU Overdraw功能類似,但它反應的是UI繪製幀的速率,同樣可以用來檢測自己的app是否丟幀或者繪製過度,具體操作可以自行Google

Hierarchy Viewer

型別:SDK自帶工具(開啟Settings,然後到 Developer Options -> Profile GPU Rendering. 選擇 On screen as bars

)
作用:檢測UI渲染用的
使用心得:老牌工具了,Google一下

Memory Monitor、Heap Viewer、Allocation Tracker

型別:AndroidStudio自帶的工具
作用:均是記憶體檢測分析的工具
使用心得:不用多說,大家懂的...

Memory Analyzer Tool (MAT)

型別:ADT時代的外掛,也有獨立的MAT版本
作用:記憶體詳盡分析的神器啊!
使用心得:它是我在ADT下唯一的美好回憶啊,AS現在的工具就差它了,希望快點跟上。為了隆重介紹我的摯愛,果斷獻上它的官方文件:http://help.eclipse.org/mars/index.jsp

Traceview、Systrace

型別:SDK自帶
作用:CPU使用分析的工具
使用心得:排除CPU效能瓶頸的利器,TraceView能讓我知道個個函式呼叫的CPU耗時,以及總CPU耗時等,方便排查優化。Systrace能夠讓我瞭解各個AP子模組的使用情況,同樣利於瓶頸排查,效能優化工作等,總之,很贊就是了。

Battery Historian

型別:獨立開源軟體 (Google IO大會上的推薦的工具)
作用
:耗電分析工具
使用心得:在耗電分析上Google親自推的東西自然不用說,Battery Historian 1.0的基本使用在網上挺多,可以自行檢視。2.0的功能更加perfect,但是國內資料少,國外的資料算還可以,so,翻牆吧,騷年!使用 Battery Historian 需要注意兩點,一是它只對5.x及其以上的系統生效,二是搭建環境的時候注意要使用Python2.x的,不要使用Python3.x。因為兩個版本的語法變法很大,Python 3.x下Battery Historian會報錯。最後,這個是開源專案 https://github.com/google/battery-historian

-----------------------------------分割線-----------------------------------

上面主要都是官方的工具,下面是一些第三方apk工具...

WakeLock Detector

功能簡介:對手機的執行狀態進行探測記錄,能統計那些應用觸發了CPU執行消耗cpu,那些應用觸發了螢幕點亮。同時還可以對執行時間進行統計,可以檢視應用內使用細節。

使用心得:之前做了一款app被使用者投訴耗電太快。偶然發現了它,拿做電量損耗檢測。同時,它也能夠統計其他安裝在手機上的app的電量消耗,方便做出對比,向頂級體驗的應用看齊。

使用前提:手機需要root,該app需要獲取root許可權

GSam Battery Monitor

功能簡介:檢測手機電池電量的消耗去向,能夠用折線圖進行統計展示。

使用心得:不錯的產品,能夠計算出你的電量被手機的哪部分功能所消耗的,可以追溯到這部分功能是哪些app在使用,從而定位到手機耗電過快的元凶。

使用前提:手機需要root,該app需要獲取root許可權

Trepn Profiler

功能簡介:高通出品的,槓槓的贊啊!分析檢測手機CPU的消耗,而且能夠分析特地的分析某個app。

使用心得:用來除錯分析自己的app,實時的用折線圖展示了app對CPU的消費情況,贊贊贊。

使用前提:手機需要root,該app需要獲取root許可權,且只支援手機的CPU是高通的。

Root Explorer

功能簡介:一款檔案瀏覽器,可以檢視app沒有加密過的資料庫,讀取裡面的資料,且支援簡單的條件查詢。

使用心得:在開發的時候,需要確認是否成功把資料插入資料庫,有了它就可以直接開啟database檔案瀏覽查找了。

使用前提:手機需要root,該app需要獲取root許可權

-----------------------------------分割線-----------------------------------

除了上面這些apk工具外,最後是一些知名IT公司開發的工具(包含SDK),很好用...

Bugly

揪BUG、揪ANR的SDK。騰訊出品的東東,槓槓的。對釋出出去的產品你想準確定位各種閃退的BUG,用它準行。而且bugly的更新頻率還挺快的,大公司的效率真是任性(只能說鵝廠越來越會用技術賺錢了~

BugTags

官網說的:測試,從未如此簡單!新一代的、專為移動測試而生的缺陷發現及管理工具。個人覺得很不錯,同樣推薦!

GT

這款神器,可能並不多人知道(我猜的)。騰訊MIG專項測試組開發出來的狂拽酷炫屌炸天的神器,只要多神,不多說了,直接進去官網看吧,我已淚奔(騰訊的技術真心叼)

iTest

科大訊飛出品的測試工具,直接安裝使用。是一款服務於Android測試人員的專業手機自動化效能監控工具。

Emmagee

網易出品的測試工具,和iTest差不多,最大的好處在於,能夠對應用的常用效能指標進行檢測,並以csv的格式儲存方便檢視應用的各項引數。測試結果看起來更加直觀,還有很重要一點是,它開源!!!!

待續...

目前大體就這些了,後續有更好的工具也會接著更新,有些工具過時失效了,也會在這裡移除...



文/D_clock愛吃蔥花(簡書作者)
原文連結:http://www.jianshu.com/p/8b77d394b2a6
著作權歸作者所有,轉載請聯絡作者獲得授權,並標註“簡書作者”。