App耗电量分析总结

本文探讨了如何利用Android官方Battery Historian、腾讯GT和PowerStat工具进行耗电与流量分析,揭示定时请求、后台流量消耗及实时耗电情况。通过实例揭示新闻应用的网络行为并讨论编码指导,重点关注屏幕唤醒、I/O操作和网络策略优化。
摘要由CSDN通过智能技术生成

工具

1、官方historian
地址:https://developer.android.com/studio/profile/battery-historian-charts.html
2、腾讯的GT
地址:http://gt.tencent.com/
3、腾讯的PowerStat
地址:http://gt.tencent.com/
4、chrome调试
用法:数据线连接手机,在地址栏输入chrome:inspect
5、Android Device Monitor
Android studio的工具

尝试

1、官方的historian
historian有2个版本:python和go。
可以得到所有的耗电信息,是耗电分析的基础,其他的工具都是基于这些原理做的,但不利于量化和分析。
在这里插入图片描述

2、GT

3、PowerStat
安装的限制条件比较多,只在一个具有root权限的android5.0系统的三星上安装成功。
PowerStat是在GT home上有说名文档和QA文档。

成果

一、新闻详情页的定时请求
在新闻详情页上下滑动,发现PowerStat里面数据监测有明显的变化。
用chrome调试,发现停留在详情页,什么都不操作,会有定时的网络请求。
在这里插入图片描述
用fiddler抓包的结果一致:
在这里插入图片描述
确定是东方头条里的定时请求。
二、app退出后台,一直消耗流量
启动app,浏览新浪、搜狐等网页后,退出app。
刷新PowerStat的数据,发现随着时间变化,数据流量一直在增加。
下一步,抓包分析数据流量消耗的原因。
使用fiddler抓包,无结果。怀疑这部分是非http的请求。
使用WireShark抓包,得到一些请求过程
在这里插入图片描述
分析后,发现这些请求与app没有关系。
不能抓到有效的网络请求。
三、app退出后台,电量消耗情况
使用PowerStat工具,测试数据:
在这里插入图片描述
这些数据是一段时间内的耗电量
通过计算可以知道一些耗电情况,但不知能否反应出实时的耗电情况。
四、测试提供的测试场景
在这里插入图片描述
考虑的是不同的网络情况,可能会有不同的处理逻辑。
待验证。

总结

编码指导:
1 屏幕唤醒,Timer,WakeLock
2 I/O操作,数据库操作;网络请求次数和数据量;充电或连接到wifi时集中请求数据。
3 屏幕亮度,屏幕颜色,减少GPS使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值