1、Building from source code(通过各种配置后从源码构建)

官方流程看似很麻烦,但一上手,很快就搞定,让我情何以堪。

ps:以下均是参考官方及网友做的 copy 
https://github.com/google/battery-historian#building-from-source-code 
http://blog.csdn.net/feitian_666/article/details/52756522 
http://blog.csdn.net/feitian_666/article/details/52756522

(1)安装 Go 语言

  • 检查是否安装成功:cmd 执行 “go version”

(2)安装 Python

  • 下载:https://www.python.org/ 【注意仅支持 python 2.7,python3.0改变很大】
  • 安装
  • 配置环境变量

  • 检查是否安装成功:cmd 执行 “python –V”【注意是大写V】

(3)安装Git

(4)安装 Java 环境(JDK)

  • 别跟我说你没有 …

(5)下载 Battery Historian 源码并且运行

  • cmd 执行“go get -d -u github.com/google/battery-historian/…”【注意最后有三个点】

  • 进入到“$GOPATH/src/github.com/google/battery-historian”目录下方【GOPATH即上面配置的工作空间】

ps:我直接“cd $GOPATH/src/github.com/google/battery-historian”不行,耍了点小技巧,直接到指定目录下运行 cmd,又因为指定目录下有名为“cmd”的文件夹,只能分两步走:

最后发现,先在所在盘符启动cmd(我是D盘),然后直接 cd 路径就行:

  • 运行 Battery Historian

    • cmd 执行“go run setup.go”【第一次执行要下载,时间会久一些,以后就快些】

    • cmd 执行“go run cmd/battery-historian/battery-historian.go”

ps:http://blog.csdn.net/feitian_666/article/details/52756522 提供了一个在没有下载成功情况下补充“go run setup.go”的方法:手动下载【closure-library】和【closure-compiler】和【flot-axislabels】,解压放到 GOROOT 目录下 third_party 文件夹下方的的 closure-compiler、closure-library 和flot-axislabels 文件夹,如果没有均手动创建。

二、使用

1、运行 Battery Historian

在上面 Building from source code 均配置成功的情况下:

  • 进入到“$GOPATH/src/github.com/google/battery-historian”目录下方
  • cmd 执行“go run setup.go”
  • cmd 执行“go run cmd/battery-historian/battery-historian.go”

2、导出手机的 Bugreport 文件:cmd执行“adb bugreport > bugreport.txt”

ps:这时如果有两个设备在线上,就会报错,应该可以指定某个设备生成的,懒一点,拔掉其它。只留下一个,ByTheWay,生成的待分析文件会有点大

3、上传 bugreport.txt 文件至 http://localhost:9999


特效篇:Android性能优化之电量篇 - http://hukai.me/android-performance-battery/

// 得到整个设备的电量消耗信息
$ adb shell dumpsys batterystats > xxx.txt
// 得到指定app相关的电量消耗信息
$ adb shell dumpsys batterystats > com.package.name > xxx.txt // 通过Google编写的python脚本把数据信息转换成可读性更好的html文件
// https://github.com/google/battery-historian/blob/master/scripts/historian.py
$ python historian.py xxx.txt > xxx.html


参考文章: 
https://github.com/google/battery-historian 
http://blog.csdn.net/feitian_666/article/details/52756522 
http://blog.csdn.net/feitian_666/article/details/52756522

文章转自:https://blog.csdn.net/zeqiao/article/details/77504477

电量分析工具 Battery Historian 的配置及使用的更多相关文章

  1. android 电量分析工具

    .参考文章:https://developer.android.com/studio/profile/battery-historian.html 这篇文章讲的是如果dump 电量日子文件batter ...

  2. lnmp环境下piwiki网站流量分析工具的安装及配置

    piwiki统计网站的安装 Piwik是一个PHP和MySQL的开放源代码的Web统计软件. 它给你一些关于你的网站的实用统计报告,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等- Piwi ...

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

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

  4. docker+Battery Historian 环境搭建(电量分析)

    docker 安装(windows) 1.  下载 https://docs.docker.com/docker-for-windows/install/  和 安装和添加环境变量(...) 2. 安 ...

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

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

  6. Android 性能优化(26)*性能工具之「Batterystats,Battery Historian」Batterystats & Battery Historian Walkthrough

    Batterystats & Battery Historian Walkthrough Working with Batterystats & Battery Historian B ...

  7. 如何在本地配置php分析工具xhprof

    测试环境: linuxMint + nginx1.4.6+mysql5.5+php5.5 什么是xhprof? XHProf是一个分层PHP性能分析工具.它报告函数级别的请求次数和各种指标,包括阻塞时 ...

  8. 日志分析工具ELK配置详解

    日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...

  9. MySQL慢日志查询全解析:从参数、配置到分析工具【转】

    转自: MySQL慢日志查询全解析:从参数.配置到分析工具 - MySQL - DBAplus社群——围绕数据库.大数据.PaaS云,运维圈最专注围绕“数据”的学习交流和专业社群http://dbap ...

随机推荐

  1. 算法Sedgewick第四版-第1章基础-013一用stack实现自动补全表达式括号

    package algorithms.exercise; import algorithms.ADT.Stack; import algorithms.util.StdIn; import algor ...

  2. C和C++中文件读写的区别

    C中采用的主要是文件指针的办法,C++中对文件的操作主要运用了“文件流”(即非标准的输入输出)的思想 eg1": #include<stdio.h> //... FILE* fp ...

  3. Oracle 系统表大全

    数据字典dict总是属于Oracle用户sys的. 1.用户: select username from dba_users; 改口令 alter user spgroup identified by ...

  4. Delphi xe6 android Popup控件的使用

    1.拖放Label.button和popup控件到form 2.在structure将button1和label1拖到popup1上,然后调整布局就可以 Popup有几个重要的属性: 1.Placem ...

  5. Charles抓包https请求

    平时使用Charles抓包,http的请求一眼就看到具体的请求信息返回信息等,但是如果是https请求,则是出现<unknow>,如下图: 若想要抓取https请求,怎么办呢? 1.连接C ...

  6. log log4j配置

      log4j配置 日志路径: web方式:web.xml <context-param> <param-name>log4jConfigLocation</param- ...

  7. js流程控制;常用内置对象

    一.流程控制 1.if .if-else.if-else if-else var ji = 20; if(ji >= 20){ console.log('大吉大利,晚上吃鸡') } alert( ...

  8. 开窗函数Over用法

    比如我们有这个表: 销售记录表 日期 姓名 产品 销售额 201601 A 电脑 12560 201601 A 手机 6501 201601 A 平板 8510 201602 A 手机 1560 20 ...

  9. Oracle使用PARTITION BY 实现数据稠化报表

    所谓的数据稠化,就是补全缺失的数据.因为在数据库表中,存储的数据经常是稀疏的(sparse data),也就是不完整的.比如记录一个员工每个月的销售额,用这么一个销售表来记录:SalesRecord( ...

  10. 选课 ( dp 树形dp 动态规划 树规)

    和某篇随笔重了?!!?!?!?!?!?不管了留着吧 题目: 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之 ...