中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

app電量測試之Battery Historian介紹

發布時間:2020-10-03 07:59:25 來源:網絡 閱讀:6459 作者:流光漏洞 欄目:移動開發

Battery Historian 

  battery historian是一款用于檢測與電池有關的信息和事件的工具,運行在Android 5.0 Lollipop (API level 21)及其之后。它會生成一張具有時間坐標的圖紙,用戶可以查看各種事件耗電時間。


安裝

一、首先安裝Go編程語言

  1. 點擊下載【下載】;

  2. 安裝Go;
    app電量測試之Battery Historian介紹

  3. 配置GOROOT和GOPATH

    a. GOROOT的作用是告訴Go 命令和其他相關工具,在哪里去找到安裝在你系統上的Go包,所以這里配置的是GO的安裝目錄

     app電量測試之Battery Historian介紹

 

    b.GOPATH可以簡單理解為是工程的目錄,所以創建一個GO的工程路徑

     app電量測試之Battery Historian介紹

 

         C.最后配置一下環境變量,把Go的bin目錄放到path環境變量中

     app電量測試之Battery Historian介紹

 

  4. 檢查Go是否安裝成功,打開命令行輸入Go version

   app電量測試之Battery Historian介紹

 

二、安裝Git

  1. 點擊下載【下載】;

  2. 按照步驟安裝;

  3. 安裝完成檢查:命令行輸入git version

   app電量測試之Battery Historian介紹

   也可以直接打開git bash檢查

   app電量測試之Battery Historian介紹

 

三、安裝Python

  1. 點擊下載【下載】,注意僅支持python2.7

  2. 安裝完成;

  3. 環境變量配置,添加Path的路徑,是Python的安裝路徑
    app電量測試之Battery Historian介紹

  4. 輸入命令行 python –V(注意是大寫V)檢查是否安裝成功

     app電量測試之Battery Historian介紹

 

四、安裝Java環境

  1. 點擊下載【下載】;

  2. 完成安裝。

 

五、下載Battery Historian源碼并且運行

  1. git目錄下點擊git-bash.exe,輸入命令行go get -d -u github.com/google/battery-historian/...

     app電量測試之Battery Historian介紹

     **下載到GOPATH配置目錄下

  2. 進入到$GOPATH/src/github.com/google/battery-historian目錄下方
    app電量測試之Battery Historian介紹

  3. 運行Battery Historian

    輸入 $ go run setup.go

    # Compile Javascript files using the Closure compiler


    app電量測試之Battery Historian介紹

    等待數分鐘,如果仍然沒有下載成功,可以手動下載,如下操作

    **下載【closure-library】和【closure-compiler】和【flot-axislabels】,解壓放到GOROOT目錄下third_party文件夾下方的的closure-compiler和closure-library和flot-axislabels文件夾 ../battery-historian\third_party;如果沒有均手動創建

     app電量測試之Battery Historian介紹

    b. go run cmd/battery-historian/battery-historian.go

    # Run Historian on your machine (make sure $PATH contains $GOBIN)

    $ go run cmd/battery-historian/battery-historian.go [--port <default:9999>]

  4. 檢查/battery-historian是否運行,登錄網址 http://localhost:9999查看



生成bugreport

  一、數據準備

    1.windows cmd下執行以下命令,開啟電池數據獲取

        adb shell dumpsys batterystats --enable full-wake-history

    2.windows cmd下執行以下命令,重置電池數據

        adb shell dumpsys batterystats --reset


  二、操作應用,生成bugreport

      拔掉USB,然后對待測app進行相關操作,一段時間后,插上USB,運行一下兩條命令。

      1.windows cmd下執行以下命令,將bugreport信息保存到相應路徑下,等待執行完畢

          adb bugreport > bugreport.txt

      2.windows cmd 下執行以下命令,將以上txt文檔轉化為html文件

          python historian.py -a bugreport.txt >battery.html   

          注:現在不知道為什么會提示錯誤,找不到historian.py這個文件

      上面的historian.py 就是用python寫的腳本,所以需要python環境,可以從github上下載,以上命令執行完后,會發現兩個文件,bugreport.txt和battery.html,這個時候用谷歌瀏覽器輸入http://localhost:9999,上傳bugreport.txt或者是直接打開battery.html就可以了,視圖如下:

  app電量測試之Battery Historian介紹


以上是V2.0版的,你可以自己切換到1版,現在來分析下各個參數的意義:

 

Battery Historian Charts

  • Battery usage categories

  • Filtering batterystats output

You should also read

  • Batterystats & Battery Historian Walkthrough

  • Systrace Walkthrough

  The Battery Historian chart graphs power-relevant events over time.

  Each row shows a colored bar segment when a system component is active and thus drawing current from the battery. The chart does not show how much battery was used by the component, only that the app was active. Charts are organized by category.

app電量測試之Battery Historian介紹

                Figure 1. Example of Battery Historian output.

Battery usage categories  各字段的含義 

  • battery_level

    電量消耗速度等級,值是百分比,093就是93%
  • top

    收集電量數據時,系統中處于top的應用,如果你的應用是前臺的,請確保它是top的。除非你想知道你的應用在后臺時的電量消耗。
  • wifi_running

    wifi連接活躍時間。
  • screen:

    屏幕點亮時間。
  • phone_in_call:

    通話時間。
  • wake_lock

    注意,在表格中,它是代*的,它是最重要的參考。
    通常應用的運行周期是啟動,運行一些作業,然后睡覺。啟動是最費資源的,如果在這行里出現多個小堅條,說明有問題。
  • running

    cpu運行時間。
  • wake_reason

    內核最后一次喚醒的原因。如果是由你的應用喚醒,請確定是否必要這么做。
  • mobile_radio

    無線電開啟的時間,開無線電非常耖電。這里出現密集的小堅條,說明有優化空間。
  • gps

    gps開啟的時間。
  • sync: 

    正在后臺同步的應用。


 注意,上面的每行分類只是根據當前開啟的功能或服務,應用收集的數據。并不是每次都一樣,如wifi沒開,就不會有wifi相關的數據,gps沒開就沒有gps相關數據。
 

Filtering batterystats output 一些在上述html中未顯示信息


 batterystats.txt 顯示的是全部數據。batterystats.html顯示的只是它分析時所需的數據。

 

      app電量測試之Battery Historian介紹

          Figure 2.Example of filtered batterystats output.

  • Battery History:

    與電量相關行為的的歷史記錄。
  • Per-PID Stats

    每個應用進程運行的時間。
  • Statistics since last charge

    最近一次充電時系統參數的統計,如電池信號等級,屏幕亮度。
  • Estimated power use (mAh) by UID and peripheral:

    粗略統計電池的mAh。
  • Per-app mobile ms per packet

    使用無線電設備傳輸數據的時間間隔。好的應用會以密集批量方式傳輸。
  • All partial wake locks

    wakelocks的統計。

     

分析V1.0,可以參考http://blog.csdn.net/itfootball/article/details/44084159


 最后我們還可以看到相關進程耗費的電量(估算值):

  app電量測試之Battery Historian介紹


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂尔多斯市| 邛崃市| 阿拉善盟| 武冈市| 嫩江县| 柯坪县| 望谟县| 隆回县| 农安县| 永丰县| 蓬溪县| 长垣县| 隆林| 磐石市| 项城市| 寻甸| 阿拉善右旗| 鄂州市| 冕宁县| 北票市| 宜黄县| 平和县| 杭州市| 右玉县| 沁水县| 牟定县| 崇州市| 永定县| 巴林左旗| 页游| 永仁县| 于都县| 华阴市| 砀山县| 兴海县| 云龙县| 辉南县| 罗甸县| 航空| 九江县| 涞源县|