【问题标题】:How to calculate power consumption of android app?如何计算android应用程序的功耗?
【发布时间】:2012-04-09 13:54:05
【问题描述】:

是否有任何公式,Api或方法? 我想测试不同应用的功耗。

【问题讨论】:

标签: android performance


【解决方案1】:

使用 adb 工具可以查看每个正在运行的应用的功耗

adb shell dumpsys cpuinfo

样本输出

Load: 1.12 / 1.07 / 1.01
CPU usage from 11344ms to 1613ms ago:
  10% 122/system_server: 5.8% user + 4.5% kernel / faults: 989 minor
  0% 233/com.htc.android.wallpaper: 0% user + 0% kernel / faults: 910 minor
  0.8% 271/com.htc.launcher: 0.8% user + 0% kernel / faults: 832 minor
  0% 40/panel_on/0: 0% user + 0% kernel
  0% 8/suspend: 0% user + 0% kernel
  0% 54/synaptics_wq: 0% user + 0% kernel
  0.2% 57/w1_bus_master1: 0% user + 0.2% kernel
  0% 253/com.android.phone: 0% user + 0% kernel / faults: 3 minor
  0% 13/kondemand/0: 0% user + 0% kernel
  0% 56/curcial_wq: 0% user + 0% kernel
  0% 2879/com.htc.bg: 0% user + 0% kernel / faults: 8 minor
  0% 2904/dhd_dpc: 0% user + 0% kernel
  0% 2906/com.google.android.apps.maps:NetworkLocationService: 0% user + 0% kern

使用batterystats可以查看每个应用的电池使用和功耗:

adb shell dumpsys batterystats

列出所有可用的 dumpsys 工具:

adb shell dumpsys -l

配置 adb 工具: http://developer.android.com/guide/developing/tools/adb.html

【讨论】:

【解决方案2】:

为了分析功耗,例如要估计 mAh 使用量,请查看:

实时查看正在发生的事情(唤醒锁、cpu、传感器等):

查看一段时间内发生的情况,例如这一天:

  • [API 21+] Battery Historian - 与 Dumpsys Battery 结合使用。请参阅他们的github project 以获取说明。将电池电量图表(屏幕截图中的黑色)悬停在您的手机充电时会显示以 mAh 为单位的放电率。

我还没有发现是否可以在 Profiler 中看到估计的 mAh 消耗,而不是抽象的“低、中、高”单位。如果您这样做,请发表评论。 Historian 应该能够根据文档这样做。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多