zoukankan      html  css  js  c++  java
  • 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:appchkbugreport-0.4-185.jar D: estBugreport.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

        

           

          

          

        

  • 相关阅读:
    Minimum Depth of Binary Tree leetcode java
    Maximum Depth of Binary Tree leetcode java
    Symmetric Tree leetcode java
    Same Tree leetcode java
    Binary Tree Postorder Traversal leetcode java
    Binary Tree Preorder Traversal leetcode java
    Binary Tree Inorder Traversal leetcode java
    Combinations leetcode java
    一键清除Centos iptables 防火墙所有规则
    阿里云centos7.7x64安装open,并配置ip转发和nat伪装
  • 原文地址:https://www.cnblogs.com/hally/p/12633105.html
Copyright © 2011-2022 走看看