android BatteryHistorian使用

news/2024/5/1 9:11:03/文章来源:https://blog.csdn.net/xiaoyu940601/article/details/129874924

android BatteryHistorian使用

Batterystats 工具和 Battery Historian 脚本的基本用法和工作流程Batterystats 是包含在 Android 框架中的一种工具,用于收集设备上的电池数据。您可以使用 adb 将收集的电池数据转储到开发计算机,并创建一份可使用 Battery Historian 分析的报告

适合的场景:

显示进程从什么位置以及通过何种方式消耗电池电量。
识别系统为了延长电池续航时间可能会延迟甚至移除应用中的哪些任务

安装 Battery Historian

1.Docker安装好之后 运行

docker run -p :9999 gcr.io/android-battery-historian/stable:3.0 --port 9999
之后 浏览器访问http://localhost:55487
进入这个界面
在这里插入图片描述

Batterystats 采集数据

  1. 将移动设备连接到计算机
  2. 在终端窗口中,关闭正在运行的 adb 服务器adb kill-server
  3. 重启 adb 并检查是否有已连接的设备adb start-server adb devices
  4. 重置电池数据收集adb shell dumpsys batterystats --reset
  5. 设备始终会在后台收集 batterystats 和其他调试信息。重置操作会清除旧的电池收集数据。如果不重置,输出内容会超大
  6. 断开设备与计算机的连接,以便仅消耗设备电池的电量
  7. 使用您的应用并执行您想要获取数据的操作;例如,断开 WLAN 连接并将数据发送到云端
  8. 重新手机连接
  9. 确保您的手机已被识别: adb devices
  10. 转储所有电池数据。此过程可能需要一段时间: adb shell dumpsys batterystats > [path/]batterystats.txt 系统会使用可选路径参数在您指定的目录中创建 batterystats.txt 文件。如果您没有指定路径,则会在您的主目录中创建该文件
  11. 使用原始数据创建报告 在创建报告之前,可以使用monkey针对某个应用做测试
  12. adb shell monkey -p com.tencent.mm -v 1000 如果要保存在某个目录下,先进入此目录 cd /Users/Desktop/battery 对于搭载 Android 7.0 及更高版本的设备: adb bugreport bugreport.zip 对于搭载 Android 6.0 及更低版本的设备: adb bugreport bugreport.txt

错误报告可能需要几分钟才能完成。在完成之前,请勿断开设备连接或取消该进程 与上面的 batterystats.txt 一样,这些文件是系统使用可选的路径参数在您指定的目录中创建的。如果您没有指定路径,系统将在您的主目录中创建这些文件 导出的文件如下
在这里插入图片描述

将采集到的数据上传

打开浏览器输入 localhost:55487,点击上传,上传之后出现submit 提交按钮
在这里插入图片描述
点击提交后,进入电池耗量分析界面
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_280027.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

了解Mysql

存储引擎 从上图我们可以查看出 MySQL 当前默认的存储引擎是InnoDB,并且在5.7版本所有的存储引擎中只有 InnoDB 是事务性存储引擎,也就是说只有 InnoDB 支持事务。 InnoDB和MyISAM的区别 MyISAM是MySQL的默认数据库引擎(5.5版之前)。虽然性…

2017百度世界大会 爱奇艺创始人CEO龚宇演讲速记

2017百度世界大会如期而来。(好像不对,Robin 说往年都是夏季办)那就改成千呼万唤始出来。 以下是爱奇艺创始人CEO龚宇演讲实录,小编全文呈上,请各位查收: 各位来宾,大家好! 很高兴今…

深力科本周知识小课堂【分立半导体】晶体管(上)基础知识,微电子人的狂欢

深力科本周知识小课堂【分立半导体】晶体管(上)基础知识,微电子人的狂欢 今天,东芝深力科电子将为大家说明一下双极晶体管和绝缘栅双极晶体管。 晶体管大致分为三种类型:双极型、场效应型和绝缘栅双极型。 双极晶体管…

Linux下的JavaEE开发(xftp传输安装、wget安装)

目录 一:jdk的安装(xftp传输安装) 二:Tomcat的安装(不需要配置环境变量) 三:Idea的安装(不需要配置环境变量) 四:Mysql的安装(wget网络安装&am…

千寻驰观亮相公路行业权威年会,开启2023全国路测第一站

千寻驰观亮相中国公路学会养护与管理养护与管理分会第十二届学术年会2023年3月28日至29日,在中国公路学会养护与管理养护与管理分会第十二届学术年会上,千寻位置面向行业全面展示了千寻驰观-道路智能巡检系统“车道级”目标位置估计、像素级的面积计算、…

linux系统编程(5)--进程间通信

1.进程间通讯概念 进程是一个独立的资源分配单元,不同进程之间的资源是独立的,没有关联,不能在一个进程中直接访问另一个进程的资源。 但是,进程不是孤立的,不同的进程需要进行信息的交互和状态的传递等,…

ASP.NET动态Web开发技术第3章

第3章C#编程基础一.预习笔记 1.C#语言概述 using指令表示引用命名空间 //:表示单行注释 /* */:表示多行注释 2.变量和常量 Camel和Pascal 3.数据类型 值类型:简单类型、结构类型、枚举类型,其中简单类型又包含了整数类型&a…

箱线图详细介绍及绘制箱线图和复现箱线图的步骤详解

目录 一、箱线图介绍二、python函数三、利用数据绘制箱线图四、拓展——未知数据复现箱线图一、箱线图介绍 箱线图(Box Plot),也称为盒须图、箱形图、盒式图,是一种用于显示数据分布情况的图表。箱线图通常由五条线组成,包括最小值、第一四分位数、中位数、第三四分位数和…

网络安全从业人员应该如何提升自身的web渗透能力?

前言 web 渗透这个东西学起来如果没有头绪和路线的话,是非常烧脑的。 理清 web 渗透学习思路,把自己的学习方案和需要学习的点全部整理,你会发现突然渗透思路就有点眉目了。 程序员之间流行一个词,叫 35 岁危机,&am…

Ae:文本图层 - 文本属性组

文本图层默认包含“文本”和“变换”两大属性组。“变换”属性组用于对文本图层的整体变换,是大多数图层通用的属性组。“文本”属性组则包含了与文本相关的特有属性,还可通过右侧的“动画” Animate按钮添加文本动画制作工具属性。请参阅:《…

前端已死?金三银四?你收到offer了吗?

目录 一、前言 二、“唱衰” 三、不局限于框架、前端 四、打动面试官 五、正向加成 六、小结 一、前言 最近在脉脉、知乎等平台都有人在渲染前端从业人员的危机,甚至使用“前端已死”的字眼,颇有“语不惊人死不休”的意味,对老鸟来说&a…

设计模式小记

1、设计模式介绍 1.1、设计模式目的 编写软件过程中,程序员面临着来自 耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性 等多方面的挑战,设计模式是为了让程序(软件),具有更好的 代码重用性…

C#,初学琼林(02)——数组和值计算(Sum,求和)的源程序,相关问题及解决之道

1、求和算法 假设我们有一个 n 元素数组,我们想计算它们的总和。a 是一个索引从 0 到 n-1 的数组 。它的元素将被标记为:a[0], a[1],a[2],a[3],...,a[n-1]。 要计算此数组元素的总和,我们将执行…

一句话设计模式10:建造者模式

建造者模式: 一步一步建造一个对象; 文章目录建造者模式: 一步一步建造一个对象;前言一、建造者模式的作用二、如何实现建造者模式第一种: 改写set方法第二种: 直接使用lombok 的 Builder总结前言 建造者模式一般使用场景是: 一个复杂的对象创建过程,分步骤执行,一步一步完成创…

【开源项目】消息推送平台austin介绍

项目介绍 核心功能:统一的接口发送各种类型消息,对消息生命周期全链路追踪。 意义:只要公司内部有发送消息的需求,都应该要有类似austin的项目。消息推送平台对各类消息进行统一发送处理,这有利于对功能的收拢&#…

【LeetCode每日一题:2367. 算术三元组的数目:暴力模拟+Hash表】

🍎作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎 🍎座右…

windows下切换PHP-cli版本

概念: PHP-cli是PHP Command Line Interface的缩写,指的是PHP的命令行界面。它是PHP语言中的一种执行方式,可以在命令行下运行PHP程序,而不需要通过Web服务器或浏览器来执行。 PHP-cli可以用于很多场景,比如&#xf…

Spark—idea

ideal—Spark新建工程新建maven工程,添加scala添加依赖pom添加依赖并下载 spark-core重复步骤下载spark-sqlspark-hivespark-graphxmysql-connector-java安装完成新建SparkDemo的scala objectsc对象可能会出现报错,参考这位老哥的解决办法wordcount打架包…

快递的旅行日记 - 深度挖掘快递物流地图轨迹查询API 的使用场景

写在前面 全球化经济的不断发展使得快递业变得越来越重要,而快递物流地图轨迹查询 API 也因此应运而生。 该 API 可以帮助用户追踪物流信息,了解快递的运输状态,方便快递企业、个人用户以及电商平台等多方面的需求。 快递物流地图轨迹查询 …

Matlab进阶绘图第13期—带填充纹理的堆叠图

带填充纹理的堆叠图是通过在原始堆叠图的基础上添加不同的纹理得到的,可以很好地解决由于颜色区分不够而导致的对象识别困难问题。 由于Matlab中未收录提供填充纹理选项,因此需要大家自行设法解决。 本文使用hatchfill2工具(Kesh Ikuma. Ma…