Battery-Historian简介

Battery-Historian是谷歌推出的一款专门分析Bugreport的工具,是谷歌2015年I/O大会上推出的一款检测运行在android5.0(Lollipop)及以后版本的设备上电池的相关信息和事件的工具,是一款对于分析手机状态,历史运行情况很好的可视化分析工具。对应的软件包和使用简介参考:https://github.com/google/battery-historian

耗电量指标

待机时间是关键指标

提升用户体验

通过不同的测试场景,找出APP高耗电量的场景并解决

环境准备

1、历史原因,historian.py脚本支持Python2,下载安装Python2配置环境变量

2、go 环境安装(下载:https://golang.org/doc/install),配置GOPATH and GOBIN到环境变量

     GOPATH:配置GO工作目录(D:\workspace\go\src)
     GOBIN:配合Go安装目录

3、jdk安装配置环境变量

4、git安装配置环境变量

安装步骤,参考https://github.com/google/battery-historian官网

1、打开git命令窗口,切换到GOPATH目录

2、go get -d -u github.com/google/battery-historian/...

3、cd battery-historian

4、go run setup.go

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

备注:进行步骤5前,需要修改battery-historian目录下的setup.go文件,把closureCompilerVersion 改为 "20190513"(只是最稳定版本)

因为不能FQ访问外网,会出现各种奇怪问题,可参考https://blog.csdn.net/shiyisay/article/details/112470978,文章作者整理很到位。

测试步骤

使用batterystats生成数据(adb自带batterystats)

使用Battery historian分析数据

batterystats收集数据步骤

1、清理耗电量数据
adb shell dumpsys batterystats --reset
adb shell dumpsys batterystats --enable full-wake-history(不用执行,默认就是开启状态,命名用途是收集电量等数据统计) 2、运行测试用例/手工操作
可功能测试时监控或者monkey、appCrawler等工具遍历 3、收集数据
Android7.0及以上版本:adb bugreport bugreport.zip
Android6.0版本:adb bugreport >bugreport.txt 4、上传数据
本地浏览器访问:localhost:9999,把zip或者txt文件数据上传 5、生成报告

备注:

1、涉及文件需求或更新,需要再次执行编译命令:go run setup.go

2、生成报告,需要执行go run cmd/battery-historian/battery-historian.go

3、编译与执行,全部在/workspace/go/src/github.com/google/battery-historian目录下

historian

进入Historian

X轴代表时间周期,默认以60s为一个周期

其对应指标含义:

battery_level:电量

plugged:充电状态及充电时间

screen:屏幕是否点亮

top:显示当前手机运行的app

status:电池状态信息,有充电、放点、未充电、已充满、未知等不同状态

遗留问题:https://www.google.com/jsapi 不能FQ,访问总是超时导致historian数据查看不了,如果用离线js,则报错404

问题截图

解决办法:docker安装

battery-historian耗电量测试的更多相关文章

  1. Battery Historian之App耗电量测试

    一.Battery Historian测试所需环境:Go+Git+Python+Java+Battery Historian源码 下载Battery Historian源码并且运行的步骤如下: 1.打 ...

  2. APP耗电量测试

    现象 APP耗电,导致电池续航能力不佳,如下图,在小米MIX2和iPhone X机型上后台静默一小时各应用的耗电排行: 基本概念 相对于PC来说,移动设备的电池电量是非常有限的,保持持久的续航能力尤为 ...

  3. 通过 Battery Historian 工具分析 Android APP 耗电情况

    电量统计模块概述 Android 从两个层面统计电量的消耗,分别为 软件排行榜 及 硬件排行榜.它们各有自己的耗电榜单,软件排行榜为机器中每个 App 的耗电榜单,硬件排行榜则为各个硬件的耗电榜单.这 ...

  4. Battery Historian for windows环境搭建

    Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Batter ...

  5. Docker安装使用battery historian

    apt-get insatll docker.io battery historian ubuntu下使用 首先要确保是google浏览器,然后用命令行 google-chrome --proxy-s ...

  6. Battery historian安装及使用

    在介绍Battery historian之前首先来介绍一下 Android adb bugreport 工具,bugreport是什么,怎么用? android系统想要成为一个功能完备,生态繁荣的操作 ...

  7. Android CPU耗电量测试

    Android CPU耗电量测试 在测试Android app时,不仅仅要关注app的功能,也好关注app的性能指标,cpu.内存.流量.电量等.简单介绍下电量测试中的cpu耗电. 影响耗电的因素 C ...

  8. iOS耗电量测试

    iOS耗电量测试 本文主要介绍的是使用Energy Diagnostics Instruments来进行iOS耗电量测试. 一.使用方法: 1)iOS 设置选项 ->开发者选项 ->log ...

  9. 【官网翻译】性能篇(四)为电池寿命做优化——使用Battery Historian分析电源使用情况

    前言 本文翻译自“为电池寿命做优化”系列文档中的其中一篇,用于介绍如何使用Battery Historian分析电源使用情况. 中国版官网原文地址为:https://developer.android ...

  10. 电量分析工具 Battery Historian 的配置及使用

    1.Building from source code(通过各种配置后从源码构建) 官方流程看似很麻烦,但一上手,很快就搞定,让我情何以堪. ps:以下均是参考官方及网友做的 copy https:/ ...

随机推荐

  1. python网络爬虫数据解析之正则

    本节内容,讲解爬取网络图片,利用正则匹配图片地址 请求网页之后,响应部分内容如下图: 1 时间:2023/1/7 10:42 2 功能描述 3 1.进行指定标签的定位 4 2.标签或者标签对应的属性中 ...

  2. 音频音量调整中的ramp up & down

    在日常生活中不管是打电话还是听音乐,都会遇到音量不合适而去调整音量的情况.如果音量调整软件处理不好,就会听到pop noise.产生pop noise的原因是音量直接从当前值骤变到目标值,而不是缓慢的 ...

  3. MySQL 表的创建、复制、修改与删除

    MySQL中如何利用代码完成表的创建.复制.修改和删除. 一.创建表 --创建新表,如果存在则覆盖 drop table [if exists] 表名; --创建新表,如果存在则返回 create t ...

  4. 在线程里使用线程外的变量为什么一定要是final类型

    public class CyclicBarrierDemo { public static void main(String[] args) { /* * 七龙珠 * */ CyclicBarrie ...

  5. 递归概念&分类&注意事项

    递归概念&分类&注意事项 概念 递归:指在当前方法内调用自己的这种现象. 递归的分类:.递归分为两种,直接递归和间接递归..直接递归称为方法自身调用自己..间接递归可以A方法调用B方法 ...

  6. 异常概念&异常体系-异常分类

    异常概念&异常体系 异常,就是不正常的意思.在生活中:医生说,你的身体某个部分有异常,该部位和正常相比有点不同,该部位的功能将受影响,在程序中的意思就是: 异常:指的是程序在执行过程中,出现的 ...

  7. Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.1.0

    maven package 异常,今天打包springboot项目时碰到的问题. Failed to execute goal org.apache.maven.plugins:maven-resou ...

  8. Java8Stream流

    Stream流呢,以前我也有所了解,像一些面试题中也出现过,Java8的新特性,有一块就是这个Stream操作集合,而且在看一些项目中也使用的比较多.但总感觉自己学的一知半解,所以今天打算系统的过一下 ...

  9. C#,Winform软件防破译-源代码加密简单方法之.NET REACTOR(二)制作软件及软件试用时间限定

    二.简单介绍使用 .net reactor 软件制作试用软件,利用license制作授权软件的方法. 1.首先,生成试用版软件 设置主文件和附属文件,打开.net Reactor 设置试用期限,在Se ...

  10. 花1分钟配置远程DEBUG,开发效率翻倍,妹子直呼绝绝子

    当把一个工程部署到远程服务器后有可能出现意想不到错误,日志打印过多或者过少都影响问题排查的效率,这个时候可以通过远程调试的方式快速定位bug,提升工作效率.本文主要讲解如何使用Idea开发工具进行远程 ...