2016-08-18 63 views
1

我开发了一个android应用程序,我想知道我的应用程序在Android设备上的功耗。我遇到过不同的线索,但没有人帮助我。如何在Android上测量我的应用程序的功耗

在android中有没有测量我的应用程序或任何其他可行方法的功耗的应用程序?

让我知道你的意见。

被修改:

从下面的答案SO张贴

Android App power consumption

我使用的 “电池历史学家” 和产生batteryinfo.txt和batteryinfo.html

的Batteryinfo.txt是如下

Battery History: 

     -3m04s883ms 090 6c120104 status=discharging health=overheat plug=none temp=0 volt=3797 +screen +phone_scanning +wifi +wifi_running +wake_lock +sensor brightness=bright phone_state=out 

     -3m02s651ms 090 6c1a0104 status=charging plug=usb volt=4123 +plugged 

     -3m00s087ms 090 6c1a0104 volt=4090 

     -2m57s951ms 090 6c1a0104 volt=4125 

     -2m43s775ms 090 6c1a0104 volt=4123 

     -2m41s563ms 087 6c1a0104 

     -2m31s787ms 087 6c1a0104 volt=4114 

     -2m28s300ms 087 6c1a0104 volt=4112 

     -2m26s037ms 087 6c1a0104 volt=4114 

     -2m22s891ms 087 6c1a0104 volt=4112 

     -2m20s797ms 087 6c1a0104 volt=4134 

     -2m08s632ms 087 6c1a0104 volt=3849 

     -2m06s567ms 083 6c1a0104 volt=3838 

     -2m04s370ms 083 6c1a0104 volt=4123 

     -1m43s700ms 087 6c1a0104 volt=4122 

     -1m32s936ms 087 6c1a0104 volt=4007 

     -1m22s724ms 083 6c1a0104 health=good 

     -1m02s524ms 080 6c1a0104 volt=3957 



Per-PID Stats: 

PID 166 wake time: +203ms 

PID 109 wake time: +2m57s295ms 



Statistics since last charge: 

System starts: 0, currently on battery: false 

Time on battery: 2s 232ms (0.0%) realtime, 2s 232ms (0.0%) uptime 

Total run time: 3d 15h 52m 45s 402ms realtime, 1d 9h 16m 33s 630ms uptime, 

Screen on: 2s 231ms (100.0%), Input events: 0, Active phone call: 0ms (0.0%) 

Screen brightnesses: bright 2s 231ms (100.0%) 

Kernel Wake lock "PowerManagerService": 2s 191ms (0 times) realtime 

Kernel Wake lock "power-supply": 412ms (1 times) realtime 

Kernel Wake lock "main": 2s 191ms (0 times) realtime 

Total received: 0B, Total sent: 0B 

Total full wakelock time: 2s 197ms , Total partial waklock time: 2s 203ms 

Signal levels: none 2s 231ms (100.0%) 0x 

Signal scanning time: 2s 231ms 

Radio types: none 2s 231ms (100.0%) 0x 

Radio data uptime when unplugged: 0 ms 

Wifi on: 2s 231ms (100.0%), Wifi running: 2s 231ms (100.0%), Bluetooth on: 0ms (0.0%) 



Device battery use since last full charge 

Amount discharged (lower bound): 0 

Amount discharged (upper bound): 0 

Amount discharged while screen on: 0 

Amount discharged while screen off: 0 



#1000: 

User activity: 2 other 

Sensor 2: 2s 206ms realtime (0 times) 

#1013: 

Wake lock AudioIn_369: 2s 203ms partial (1 times) realtime 

#10010: 

Apk com.android.providers.media: 

    Service com.android.providers.media.MtpService: 

    Created for: 0ms uptime 

    Starts: 1, launches: 1 

#10029: 

Wake lock Samsung Recognition Service: 2s 197ms full (0 times) realtime 



Statistics since last unplugged: 

Time on battery: 2s 232ms (1.2%) realtime, 2s 232ms (1.2%) uptime 

Total run time: 3m 4s 912ms realtime, 3m 4s 911ms uptime, 

Screen on: 2s 232ms (100.0%), Input events: 0, Active phone call: 0ms (0.0%) 

Screen brightnesses: bright 2s 232ms (100.0%) 

Kernel Wake lock "PowerManagerService": 2s 191ms (0 times) realtime 

Kernel Wake lock "power-supply": 412ms (1 times) realtime 

Kernel Wake lock "main": 2s 191ms (0 times) realtime 

Total received: 0B, Total sent: 0B 

Total full wakelock time: 2s 232ms , Total partial waklock time: 2s 232ms 

Signal levels: none 2s 232ms (100.0%) 0x 

Signal scanning time: 2s 232ms 

Radio types: none 2s 232ms (100.0%) 0x 

Radio data uptime when unplugged: 0 ms 

Wifi on: 2s 232ms (100.0%), Wifi running: 2s 232ms (100.0%), Bluetooth on: 0ms (0.0%) 



Device is currently plugged into power 

    Last discharge cycle start level: 90 

    Last discharge cycle end level: 90 

    Amount discharged while screen on: 0 

    Amount discharged while screen off: 0 



#1000: 

    User activity: 2 other 

    Sensor 2: 2s 232ms realtime (0 times) 

#1013: 

    Wake lock AudioIn_369: 2s 232ms partial (1 times) realtime 

#10010: 

    Apk com.android.providers.media: 

    Service com.android.providers.media.MtpService: 

    Created for: 0ms uptime 

    Starts: 1, launches: 1 

#10029: 

    Wake lock Samsung Recognition Service: 2s 232ms full (0 times) realtime 

当我打开Batteryinfo.html时,它显示“找不到结束时间”。

我紧跟在后下的答案和注释提到

Battery historian cannot find end time android

这一次,当我运行commd产生从中显示错误batteryinfo.html batteryinfo.html的代码(是指向3行注释掉的代码)

注意:由于我的设备不支持使用batterystats,因此我使用batteryinfo。

对此有任何帮助。我想打开batteryinfo.html的详细信息

+0

http://stackoverflow.com/questions/12581333/android-app-power-consumption –

+0

一种方法是看电话的设置内的电池?只需从顶部拖动,导航至电池功能,然后您就可以查看其他应用程序的功耗贡献值了吗? – Subby

+0

@Subby,我有2个应用程序,我需要知道哪个应用程序消耗更多的时间为15分钟。我只是不能通过在设置中检查它来报告一些估计值。我需要这2个应用程序的准确读数。 – John

回答

1

我不知道您的意思是无法读取设置中的估算值。

看看我的答案Android App power consumption

“ 首先,从谷歌Play上powertutor是过时的。我已经检查了它的源代码,并发现功耗估算模型是一些旧手机型号,功率导师的价值远小于实际的功耗

因此,我建议使用由谷歌开发的Battery Historian来估算每个App的电池消耗量,但它是用Python/Go ,它会在HTML文件中显示硬件调用,并且您可以在相应的文本文件中找到每个应用程序的电池消耗量

https://developer.android.com/studio/profile/battery-historian.html

这将创建一个batterystats.txt,显示在设置完全一样的。

+0

感谢您的回答徐东然。我尝试根据您的建议使用“Battery Historian”,并正确生成.txt和.html文件,但是当打开.html文件时,它仅显示“无法找到结束时间”。你能帮我解决这个问题吗? – John

+0

首先,如果你想检查你的应用程序的功耗。我建议你通过查找应用程序的uid来阅读batterystat.txt文件。对于'无法找到结束时间'问题,我检查了源代码。这是完全一样的这个答案:http://stackoverflow.com/questions/34487749/battery-historian-cannot-find-end-time-android如果可能的话,你可以在这里粘贴txt文件? –

+0

我用我的batteryinfo.txt文件编辑了这个问题。我跟着你发布的链接,它也不适合我。我在那篇文章的答案下张贴了我的问题。请指导下一步吗? – John

相关问题