文章目录

  • 一、Battery Historian 环境要求
  • 二、上传电量报告
  • 三、Battery Historian 电量分析报告
  • 四、电量优化三原则
  • 五、电量优化注意事项



参考 Google 官方文档 : 优化电池续航时间





一、Battery Historian 环境要求



在 【Android 电量优化】电量优化 ( 耗电量测试 | Battery Historian 简介 | apt 源更新 | Docker 安装 | Battery Historian 安装 ) 博客中主要进行了 VMWare 虚拟机环境下 Ubuntu 18.04.4 系统中安装 Battery Historian ;

在 【Android 电量优化】电量优化 ( 获取电量分析报告 | 阿里云服务器搭建 Battery Historian | 上传并生成分析报告 ) 博客中 , 讲解了在阿里云服务器上搭建 Battery Historian , 并在本地导出手机的电量报告 , 使用该工具分析电量时 , 每一步操作响应都很慢 ;


在之前使用 Battery Historian 时 , 搭建好环境之后 , 访问很慢 , 找了半天原因 , 发现使用 Battery Historian 必须 , 否则基本无法使用该工具进行电量分析 , 卡了半天 ; 既然的话 , 那么服务器和本地都吧 ;



这里给出最佳实践 : 必须 ; 之前访问巨慢 , 发现是没有的原因 ;


① 服务器可 : 在阿里云香港服务器上搭建 Battery Historian ;

② 本地电脑 : 本地访问 http://8.210.151.183:9999/ 地址 , 必须 , 否则无法使用 ;





二、上传电量报告



必须才能正常使用 , 否则这里点击 Browse , 选择文件后 , 没有任何响应 ;


1 . 选择文件并上传 : 访问 http://8.210.151.183:9999/ 地址 , 点击页面中的 Browse 按钮 , 从本地磁盘中选择 bugreport.txt 或 bugreport.zip 文件 , 选择完毕后 , 点击右侧的 Submit 按钮 , 提交上传 ;

【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第1张图片


2 . 等待上传完成 : 等待上传完毕 , 这个上传的比较慢 , 大概几分钟吧 ;

【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第2张图片


3 . 分析阶段 : 这个分析阶段很短 , 半分钟左右 ;

【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第3张图片


4 . 查看生成的报告 : 在下面的图标中可以分析出每个硬件设备的激活时间 , 及耗电量 ;

【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第4张图片


5 . 选择不同的应用进程对应的报告 : 点击 App Selection 可以选择不同的应用 , 进行分析 ;

【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第5张图片





三、Battery Historian 电量分析报告



1 . 电量分析报告 :

① 报告内容 : 该报告中分析的是整个系统的各个硬件模块的耗电量 , 不是针对某一个应用的报告 ;

② 起始时间 : 从调用 adb shell dumpsys batterystats --reset 方法重置电池状态开始 ;

③ 终止时间 : 到调用 adb bugreport bugreport.zip 导出电量报告结束 ;




2 . 报告中的各项指标 :


【Android 电量优化】电量优化 ( Battery Historian 环境要求 | 电量分析报告 | 电量优化三原则 | 电量优化注意事项 )_第6张图片

Reboot : 重启 ;

CPU running : CPU 运行耗电量 ; 这个一般是一直再运行耗电的 , 无法分析出是哪个 APP 消耗了多少 CPU ;

Userspace wakelock ( all ) : 用户拿到 wakelock , 保持屏幕不息屏的状态 ;

Screen : 屏幕耗电 , 没有耗电的状态 , 说明屏幕处于息屏状态 , 有耗电 , 说明屏幕处于唤醒状态 ;

Plugged : 是否处于充电状态 ;

黑色的线 : 表示电量值 , 0 ~ 100% , 使用时一直在掉 , 充电时 , 一直在提高 ;

Battery Level : 每消耗 1% 的电量 , 提示一次 ; 可以判断每 1% 的电量使用了多长时间 ;



3 . 查看指定应用的耗电量 : 在 App Selection 中选择对应的应用进程 ID , 可以查看指定应用的电量消耗 ;





四、电量优化三原则



电量优化三原则 :


① 减少操作 : 减少后台处理的次数 , 减少多于操作 ; 如下载数据时 , 如果有缓存数据 , 使用缓存数据 , 尽量少启用 WIFI 或 5G 模块 , 蓝牙连接时 , 记住蓝牙地址 , 尝试直接连接这个蓝牙 , 不要每次都启动蓝牙搜索 , 该操作功耗巨大 ;

② 推迟操作 : 有些操作是否可以在充电时完成 , 如软件更新 , 数据备份云端等 , 获取最新版本号 , 缓存云端数据 , 尽量都在插着数据线时进行 ; 能充电时执行就在充电时执行 , 能在 WIFI 执行 , 就不再 5G 情况下执行 ;

③ 合并操作 : 将启用硬件设备模块的操作 , 集中执行 , 如获取位置 , 上传下载 , 一次启动硬件模块 , 密集执行多个任务 , 不要隔一段时间唤醒一次 , 只执行单个工作 ;





五、电量优化注意事项



电量优化注意事项 :


① Wakelock 尽量少的使用 , 使用 JobScheduler / Alarm 替代前者 ;

② 硬件及时释放 : 对于硬件设备的调用请求 , 使用完毕后及时关闭 , 如 GPS , 蓝牙 , WIFI 等模块 , 不要长时间处于激活状态 , 用完就关闭释放 ;

③ 任务执行环境优先级 : 某些不是很着急的任务 , 尽量在充电状态下执行 , 充电 > 不充电 , WIFI > 2G/3G/4G/5G ;

更多相关文章

  1. Android蓝牙开发
  2. 达牛:android的基础学习—如何做好环境搭建
  3. 安卓开发环境的搭建(Eclipse+ADT+SDK+JDK的下载)
  4. 第1章 Android简介与开发环境的配置
  5. Android 1.0将不支持开发蓝牙和Gtalk应用
  6. Android Studio IDEA:基于IDEA的安卓开发环境

随机推荐

  1. 国内中文Android开发者社区和论坛
  2. 三,android编码规范 & 常用布局 & 常用控
  3. ARCVM:Chrome OS 中运行 Android 应用程序
  4. Android(安卓)65K问题之65K来源探究
  5. Android 应用的自动升级、更新模块的实现
  6. android集成语音功能
  7. 通过Android Studio查看SDK源码
  8. 转帖并消化:Android中一种使用AttributeS
  9. AlterDialog详细讲解
  10. Android中Activity界面展示与跳转及数据