adb之電量分析工具Battry historian和ChkBugReport(十一)


一,電量分析工具:Battry historian

  我們先來看Battry historian

  手動搭建環境一 (或者我們可以在這里進行部署和操作:https://github.com/google/battery-historian)

  1,Battry historian,因為這個是go語言開發的,所以要先安裝go語言 Golang下載地址:https://studygolang.com/dl 

  下載后一路安裝,安裝完成以后驗證一下:

  

 

 

  2,下載git: https://git-scm.com/downloads

   

  下載以后直接一路安裝,最后在cmd中執行git  version

 

  然后打開git bash---在運行中可以找到

 

  執行命令

 

    1, git clone https://github.com/google/battery-historian.git

 

    2, cd battery-historian

 

    3, go get -d -u github.com/google/battery-historian/...

 

    4, go run setup.go

 

    5,go run cmd/battery-historian/ battery-historian.go

 

 

   配置完成后是一個地址,網頁形式打開,如下圖:

  

 

  3,開始分析

    a,執行命令:adb shell dumpsys batterystats --reset    重置電池數據收集

    

 

 

     b,執行電池的數據收集命令

      第一種:adb shell dumpsys batterystats > batterystats.txt  這個是把采集的結果導出到txt文件中

      

 

      第二種:adb bugreport bugreport.zip  安卓7以上使用

              adb bugreport > bugreport.txt  安6以下使用

 

 

      操作之前我們做好先操作一下應用,然后再執行,我們這里用adb bugreport bugreport.zip收集,但是這個命令一直有問題,我們測試發現adb bugreport > bugreport.txt其實可以使用到安卓7以上的

      那么就執行adb bugreport > bugreport.txt吧。

      操作1:

      

 

      提交后的結果:

      

 

 

       操作2:選中電量的收集選項

      

 

      

 

 

       操作3:選中應用后查看右側面板:喚醒鎖----手機黑屏等情況,喚醒手機,造成耗電量大增

      

 

      操作4:應用的服務---這些服務也可能會造成我們耗電的原因

      

 

 

     詳細分析可以去官方查看,比較詳細:https://github.com/google/battery-historian

二,電量分析工具ChkBugReport  

    BugReport 是由 Bug 和 Report 這兩個英語單詞組成。bug 是英語「瑕疵,錯誤」的意思,在計算機領域專指程序中的問題。report 是英語「報告」的意思,顧名思義,BugReport 就是「錯誤報告」的意思。不過,真實的 BugReport 不僅僅記錄錯誤,不同級別的日志也會記錄下來,方便我們 debug,一般來說 Android 的 BugReport 是 .txt 結尾的文本文件,比如公司的 Android app 里的 BugReport 就是命名為 bugreport.txt。當然了,命名沒有限定

    Android 的 BugReport 里面包含了 dumpsys,dumpstate,logcat 命令輸出的結果

    要生成一個 BugReport,我們可以運行以下命令:adb bugreport > bugreport.txt

    

 

    這是這個文件的內容

  

 

  還有MEMORY INFO (/proc/meminfo),CPU INFO (top -n 1 -d 1 -m 30 -t), PROCRANK (procrank) ,VIRTUAL MEMORY STATS (/proc/vmstat) 等

  這搭建比較簡單:只有一個jar包就可以:https://github.com/sonyxperiadev/ChkBugReport/downloads

  

 

   可以用它來解析 BugReport 文件並生成網頁版報告,但是需要配置電腦的jdk環境變量

  最后在cmd中執行命令:java -jar D:\app\chkbugreport-0.4-185.jar D:\test\Bugreport.txt

  注意,這里java -jar 后面要跟着chkbugreport-0.4-185.jar  和  Bugreport.txt的絕對路徑,當然也可以配置環境變量

  執行停止后,會出現Bugreport_out文件夾

  

    里面有這些內容,其中index.html就是我們需要的

  

 

  打開html文件后如圖:

  

 

   在這里你還可以查看每一個項目的詳細信息,如:

  

 

 

     ok,有了這個報告,就可以盡情的分析了

    下面是一個功耗原理解讀,可以參閱哦

    https://blog.csdn.net/u014134180/article/details/88317636?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158599553919725219921872%2522%252C%2522scm%2522%253A%252220140713.130056874..%2522%257D&request_id=158599553919725219921872&biz_id=0&utm_source=distribute.pc_search_result.none-task-blog-all_SOOPENSEARCH-1

 

    

 

       

 

      

      

 

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM