Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android性能專項測試之Batterystats

Android性能專項測試之Batterystats

編輯:關於Android編程

Batterystats & Battery Historian Walkthrough
Battery Historian Charts
Android應用的耗電量統計
SupplicantState

batterystats使用條件

5.0以上系統 battery-historian腳本

batterystats的啟動

啟動統計Battery數據的話,首先要初始化batterystats數據

adb kill-server

> adb devices

> adb shell dumpsys batterystats --reset

上面的操作執行完畢後,拔掉手機,操作你的App,操作完成後,重新連接手機,執行下面的命令,收集Battery數據:
adb shell dumpsys batterystats > batterystats.txt
得到這些數據後,這個時候使用我們的battery-historian來生成我們可見HTML報告:
python historian.py batterystats.txt > batterystats.html

得到的報告如下:

這裡寫圖片描述

Battery Historian指標

在Android性能專項測試之battery-historian試用 一文中已經介紹了一些屬性,但是目前又增加很多,下面來看看新加屬性的意義:

屬性 意義 gps gps是否開啟 sync 是否跟後台同步 mobile_radio 是否開啟radio wake_reason 喚醒原因 phone_in_call 進行通話

batterystats信息過濾

Battery History

電量相關數據的時間序列:

Battery History (0% used, 152 used of 256KB, 5 strings using 256):
                    0 (9) RESET:TIME: 2015-10-09-19-50-15
                    0 (2) 009 status=charging health=good plug=usb temp=324 volt=3683 +running +wake_lock +wifi_full_lock +audio +screen +plugged data_conn=lte phone_signal_strength=moderate brightness=bright +wifi_running +wifi wifi_signal_strength=4 wifi_suppl=completed top=u0a34:com.google.android.googlequicksearchbox
                    0 (2) 009 user=0:0
                    0 (2) 009 userfg=0:0
               +189ms (2) 009 volt=3660
               +216ms (2) 009 volt=3688
             +8s387ms (2) 009 +gps conn=3:CONNECTED
             +9s387ms (2) 009 -top=u0a34:com.google.android.googlequicksearchbox
             +9s387ms (2) 009 -gps +top=u0a130:com.example.android.sunshine.app
             +9s569ms (2) 009 +mobile_radio conn=3:DISCONNECTED
            +10s217ms (2) 009 volt=3577
            +17s294ms (2) 009 volt=3619
            +20s216ms (2) 009 volt=3576
            +21s530ms (1) 009 +wifi_scan
            +22s801ms (1) 009 -wifi_scan
            +29s842ms (1) 009 -mobile_radio
            +30s252ms (2) 009 volt=3616

Per-PID Stats

每一個進程執行了多長的時間

Per-PID Stats:
  PID 0 wake time: +396ms
  PID 868 wake time: +1s682ms
  PID 1402 wake time: +539ms
  PID 0 wake time: +6s473ms
  PID 868 wake time: +3ms
  PID 1723 wake time: +166ms
  PID 4841 wake time: +11m1s479ms
  PID 19942 wake time: +271ms
  PID 868 wake time: +42ms
  PID 21564 wake time: +172ms
  PID 15488 wake time: +67ms
  PID 4841 wake time: +6s512ms
  PID 4841 wake time: +6s512ms
  PID 18217 wake time: +126ms
  PID 3876 wake time: +228ms
  PID 868 wake time: +20s440ms
  PID 16547 wake time: +23ms
  PID 22121 wake time: +288ms
  PID 22146 wake time: +59ms
  PID 16424 wake time: +485ms

Statistics since last charge

Statistics since last charge:
  System starts: 0, currently on battery: false
  Time on battery: 0ms (0.0%) realtime, 0ms (0.0%) uptime
  Time on battery screen off: 0ms (0.0%) realtime, 0ms (0.0%) uptime
  Total run time: 34s 134ms realtime, 34s 134ms uptime
  Start clock time: 2015-10-09-19-50-15
  Screen on: 0ms (--%) 0x, Interactive: 0ms (--%)
  Screen brightnesses: (no activity)
  Connectivity changes: 2
  Mobile total received: 0B, sent: 0B (packets received 0, sent 0)
  Phone signal levels: (no activity)
  Signal scanning time: 0ms
  Radio types: (no activity)
  Mobile radio active time: 0ms (--%) 0x
  Mobile radio active adjusted time: 0ms (--%)
  Wi-Fi total received: 0B, sent: 0B (packets received 0, sent 0)
  Wifi on: 0ms (--%), Wifi running: 0ms (--%)
  Wifi states: (no activity)
  Wifi supplicant states: (no activity)
  Wifi signal levels: (no activity)
  Bluetooth on: 0ms (--%)
  Bluetooth states: (no activity)

Estimated power use (mAh)

目前只能算比較粗略的估計,不能作為實際消耗數據,其他google更為精准的數據

  Estimated power use (mAh):
    Capacity: 3220, Computed drain: -2444.11370879, actual drain: 0.00000000
    Idle: 24.7
    Uid u0a46: -0.01197222
    Uid u0a100: -0.04600000
    Uid u0a29: -0.07444444
    Uid u0a118: -0.14044444
    Uid u0a104: -0.73288889
    Uid 1000: -2.12172492
    Uid u0a14: -3.36807500
    Uid u0a99: -3.78076692
    Phone calls: -19.54370833
    Cell standby: -107.36537361
    Screen: -2331.64616000

Per-app mobile ms per packet

radio喚醒時間除以數據包發送次數,該時間越小代表性能越好,一個高效的App會將所有的流量轉化為batches。

All partial wake locks

所有程序中wakelock,關注持續時間和數量

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved