如题,这是一篇分享如何分析Android平台App耗电问题的文章,今天学到的新技能,算是之前写过的一篇文章Android APP耗电优化的一些经验的续集吧,O(∩_∩)O。
首先,上一个adb命令:

adb shell dumpsys batterystats

这个命令可以打印出于电池消耗相关的信息,可以通过

adb shell dumpsys batterystats > D:/batterystats.txt

命令将内容输出到文本文件中。文件大致内容如下:

  1. 左边的方框内是时间线,在这个文件的记录中,电池消耗是以时间为线索的。
  2. 中间的方框是剩余电池电量,在正常使用情况下,会随着时间减少。
  3. 右边的方框表示在该时间发生了什么事,一般都是与耗电相关的事件的重要节点。比如+wake_lock是某个应用获取了唤醒锁,-wake_lock是释放了唤醒锁。+running则表示CPU被某段程序占用,-running则表示该段程序运行完了等等,意思都是比较字面化的。而u0a78等符号则表示应用id,一个id对应一个应用,应用的id列表可以在这个文件内找到。(以上都是我的猜测,但是经过我一天学习应该基本正确。。。内谁,你先把砖头放下,有话我们慢慢说)

那有了这个报告之后该怎么分析耗电高,手机发热的原因呢?我们用notepad++打开该文件然后搜索“temp=”,会得出下面的结果:

看到没有,电量有了,手机温度也有了,我们只要分析温度升高还有电量下降特别快的时间里发生了什么事情就行了。我的手机使用比较正常所以这里没有太特别的地方。

最后,该上轮子了。google已经做了工具用于可视化的显示这个报告:battery-historian。
我们只要跟着下面几个步骤做就可以查看可视化电池报告啦:
1.下载上面链接中的battery-historian工具并解压。
2.打开解压文件夹中的script文件夹。
3.在该路径下打开命令行窗口。
4.输入historian.py D:/batterystats.txt > D:/battery.html。这里需要安装python环境,我装的是python2.7,可以正常使用。
5.用chrome浏览器打开battery.html文件。
做完以上步骤我们就可以看到以下界面,开始分析吧少年:

Android App耗电发热分析相关推荐

  1. Android功耗(21)--- App耗电发热分析

    Android App耗电发热分析 adb shell dumpsys batterystats 这个命令可以打印出于电池消耗相关的信息,可以通过 adb shell dympsys batterys ...

  2. Android 系统(102)---Android APP耗电优化

    Android APP耗电优化 可能造成耗电的一些原因 网络请求耗电,而且手机数据网络进行http请求比无线网进行http请求更加耗电,因为数据网络调用到一些底层的硬件模块,就如GPS一样,当手机打开 ...

  3. Android 应用性能优化(4)---Android App性能评测分析-启动时间篇

    Android App性能评测分析-启动时间篇 1.前言 随着项目版本的迭代,App的性能问题会逐渐暴露出来,而好的用户体验与性能表现紧密相关,性能问题从应用的启动优化开始,下面会根据实际app性能测 ...

  4. Android APP native 崩溃分析之 linker SIGBUS 崩溃

    原文地址:https://caikelun.io/post/2019-05-31-android-app-native-crash-linker-sigbus/ 这是 Android APP nati ...

  5. Android App性能评测分析

    Android App性能评测分析-启动时间篇 Android App性能评测分析-网络流量篇 Android App性能评测分析-内存篇 Android App性能评测分析-cpu占用篇 Andro ...

  6. android 恶意应用,对恶意Android应用Bangle Android App Packer的分析

    原标题:对恶意Android应用Bangle Android App Packer的分析 写在前面的话 近日Trustlook Labs发现了一个恶意安卓应用程序,它使用社会工程手法诱骗用户安装.这个 ...

  7. Android App加固原理分析

    Android App加固原理分析 对App进行加固,可以有效防止移动应用被破解.盗版.二次打包.注入.反编译等,保障程序的安全性.稳定性.对于金融类App,尤其重要. 对App dex进行加固的基本 ...

  8. 耗电优化(上):Android App 耗电分析

    这里写目录标题 1. 电量和硬件 1.1 App 通过使用硬件模块消耗相应的电能 1.2 资源调度机制是厂商功耗优化最重要的手段 2. 电量和应用程序 2.1 评估不同应用程序的耗电情况 结论:把电量 ...

  9. Android App耗电分析

    项目中用到了一个比较坑爹的问题,就是App的耗电问题,发现自己开发的时候没有注意这个问题,一发布给用户就暴露了这个我平常不注意的问题挺蛋疼,平常开发我都觉得耗电是很正常的,再耗电也在可接受范围内,但是 ...

最新文章

  1. 大厂围城:千辛万苦杀进来,为何他们选择出逃?
  2. httpclient异步发送请求_关于Tornado5.1:到底是真实的异步和还是虚假的异步
  3. [PaaS] 深入 Cloud Foundry(一)构架 (转载)
  4. 虚拟服务器问题,虚拟主机常见的五大问题
  5. 中国历史上影响最大的10首诗
  6. (Python代码)通过视差图获取图片中不同物体的高度比
  7. 初中计算机理论教案,初中信息技术教学设计
  8. 笔记本电脑CPU选型与插槽型号
  9. Shashlik Cooking(思维)
  10. 外篇 评相对论
  11. 神器:PDF批量替换文字
  12. ffmpeg将图片和mp3合并成mp4
  13. 阿里云弹性裸金属服务器常见问题汇总
  14. 海外游戏广告应该怎么做
  15. 关于Boost电感的问题
  16. 中国地质大学计算机学院保研率,2020年中国地质大学(北京)保研率是多少
  17. winds操作系统下登录本地MySQL和远程MySQL
  18. Yahoo! 搜索引擎顶级使用技巧
  19. PowerDesigner入门可能会遇到的问题,打开.pdm文件,数据库设计
  20. 【UE4】3DMAX制作骨骼蒙皮

热门文章

  1. 正则引擎入门——基于虚拟机的正则匹配(二)
  2. 游戏一直服务器维护,游戏服务器显示维护中
  3. FATE 1.10.0 单机部署
  4. “双非”渣本投岗爱奇艺(Java),三轮技术面等消息,侥幸通过!
  5. java虚拟机 — 字节码生成
  6. 【颜纠日记】干性皮肤的人油性皮肤更容易衰老?
  7. 字符串 二进制数字 转换 java_如何将二进制数据转换为字符串并返回到Java中?
  8. 腾讯 Robotics X 轮腿式机器人 Ollie 亮相 ICRA 2021,花滑空翻样样行
  9. java 声明数组的两种方式
  10. 【自动控制理论(一)】对PID控制的理解