2016-11-22 132 views
0

我有一些导航应用程序,我想知道我的应用程序中传感器的不同采样率如何影响电池消耗。 我使用:adb shell dumpsys cpuinfo命令进行多项测试。 结果(加速度计和陀螺仪):Android - CPU使用率和电量消耗

0Hz时 - 的CPU使用率:17%

15Hz的 - 的CPU使用率:20%

100Hz的 - 的CPU使用率:23%

如何我从CPU的使用情况可以知道电池使用寿命减少多少(例如,如果我使用我的应用1小时)

+0

大多数Android手机会告诉你每个应用程序使用电池多少(相对)。这可以在设置>电池>我的应用程序下找到 –

回答

0

首先,您需要知道系统配置的每个时钟速度值的电压/安培级别,可能从您的设备获得有时(如果您拥有root用户访问权)或数据表。

接下来你需要知道CPU在每个状态下花了多少时间,对于那个信息检查/sys/devices/system/cpu/cpuN/cpufreq/stats/time_in_state。 相关问题:Android read CPU time in states for multicore devices

然后乘以闲置和运行功耗之间的差异,加上 空闲水平和值将权力或多或少确切数额它花了运行设备一段时间。将此值与程序未运行时获得的值进行比较,并使用不同的参数运行时,可以对电池寿命变化进行猜测。

但请记住,功耗取决于许多其他因素,而不仅仅是CPU速度和利用率。例如,传感器也会消耗功率(一些传感器 - 数量很大),并且在任何实际情况下,使用无线电显示器通常会浪费大部分电池电量。