Android App優化之效能分析工具

2021-07-28 02:41:27 字數 1790 閱讀 5038

本文暫不對工具的使用做過多的深入.

在後續的具體例項中會具體說明怎麼用這些工具來達成分析目的和解決問題的.

說明 顧名思義, 「嚴格模式」, 主要用來限制應用做一些不符合效能規範的事情. 一般用來檢測主線程中的耗 時操作和阻塞. 開啟strictmode後, 如果執行緒中做一些諸如讀寫檔案, 網路訪問等操作, 將會在log console輸出一些警告, 警告資訊包含stack trace來顯示哪個地方出了問題.

文件作用主要用來做主執行緒優化分析

說明 systrace是乙個收集和檢測時間資訊的工具, 它能顯示cpu和時間被消耗在哪兒了, 每個程序和執行緒都在其cpu時間片內做了什麼事兒. 而且會指示哪個地方出了問題, 以及給出fix建議.

其以trace檔案(html)的方式記錄. 可以直接用chrome瀏覽器開啟檢視. 介面如下:

文件作用作用很多, 個人主要用來分析ui的繪製時間, 結合hierarchy viewer來提公升ui效能.

也可以用來發現耗時操作.

說明 hierarchy viewer提供了乙個視覺化的介面來觀測布局的層級, 讓我們可以優化布局層級, 刪除多餘的不必要的view層級, 提公升布局速度.

有必要說明下的是:

上圖紅框標出的三個點是關鍵分析資料. 左起依次代表view的measure, layout和draw的效能. 另外顏色表示該view的該項時間指數, 分為:

作用用來做view層級分析, 可以分析出view tree中的效能阻塞點, 以便對症下藥, 提公升布局效能.

hierarchy viewer需要root的機器(產品機沒有開啟viewserver)才可以執行.

可以使用第三方的開源的viewserver來協助我們在未root的機器上使用hierarchy viewer分析.

說明 乙個圖形化的工具, 用來展示和分析方法的執行時間.

文件作用分析方法呼叫棧以及其執行時間, 優化方法執行.

作用用來做記憶體分析, 記憶體洩露排查的不二之選. 可以結合heap viewer, allocation tracker來分析.

可以匯出hprof檔案結合第三方的mat工具分析洩**.

說明 android studio的monitor還提供了其他三個motinor — cpu, gpu, network.

文件作用分別用來跟蹤監測cpu,gpu和network的使用極其變化, 可以作為網路優化, 流量優化和渲染優化等的乙個指導. (個人並不常用到~)

android的開發者模式中也提供了較多的用來監測效能的選項, 可以用下:

以下工具全部開源, 開源萬歲…

說明 google出品, 通過android系統的bugreport檔案來做電量使用分析的工具.

文件作用用來做電量使用分析.

文件作用文件

作用說明

乙個library, 用來檢測activity生命週期執行效能, dagger2注入效能以及幀率效能的工具.

文件作用如果你的應用使用的dagger2, 這個就比較必要了.

AndroidAPP效能優化

布局優化 android布局優化之merge include viewstub使用與原始碼分析 android抽象布局 include merge viewstub android layoutinflater原理分析,帶你一步步深入了解view 一 優化 譯 android效能優化 避免記憶體洩露...

android app之布局優化

為了我們的應用介面渲染更加流暢,我給大家介紹一下android中常見的介面布局優化,它分以下兩種 1 xml檔案中的優化 2 自定義控制項中的繪製優化 檢測工具 1 sdk tools下的自帶工具hierarchy viewer來查詢layout布局中的控制項是否繪製過於重疊.2 在開發者選項中,開...

優化Android App效能?十大技巧

高效地利用執行緒 1.在後台取消一些執行緒中的動作 為了加快響應速度,需要把費時的操作 比如網路請求 資料庫操作或者複雜的計算 從主線程移動到乙個單獨的執行緒中。最高效的方式就是在類這一級完成 這項操作,可以使用asynctask或者intentservice來建立後台操作。如果選擇使用intent...