Android 应用电量计算公式

一、有关电量的几个公式:

电能W(焦耳J) = 电功率P(瓦特W) * 时间T(s) = 电压U(福特V)* 电量Q(库仑C)

电功率P(瓦特W) = 电压U(福特V)* 电流I(安培A),表示电流做功快慢。代入上面的公式,得到:

电量Q(库仑C)= 电流I(安培A)* 时间T (s)

 

二、Android 应用电量主要在 cpu,wakelock,mobile data,wifi,gps及其他sensor,各部分的计算公式为:

cpu = cpuSpeedStepTimes[step]/totalTimeAtSpeeds * (user time + system time) * powerCpuNormal[step]

wake lock = wake lock duration * power_profiler.xml 中 type = cpu_awake 的数值

data transformation = data bytes * getAverageDataCost()

wifi running = wifi running duration * power_profiler.xml 中 type = wifi_on的数值

gps = gps sensor * power_profiler.xml中的type=gps_on的数值

other sensors = sensor duration * sensor default

因此,电量计算公式为:

电量(mAs) = cpu + wake lock + data transformation + wifi running + gps + other sensors

 

关于 power_profiler.xml 

路径:xref: /frameworks/base/core/res/res/xml/power_profile.xml,运行时被编译到 /system/framework/res/xml下

解析代码:xref: /frameworks/base/core/java/com/android/internal/os/PowerProfile.java

转载于:https://my.oschina.net/u/217380/blog/1492269

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值