電量優(yōu)化Battery Historian2.0 配置

概念

Battery Historian 是一個(gè)這樣的的工具:可以在 Android 5.0 Lollipop(API 級(jí)別21)及更高版本的 Android 設(shè)備上檢測與電池相關(guān)的信息和事件贮尉,而在此期間赌渣,該設(shè)備沒有插上電源览芳。它允許應(yīng)用程序開發(fā)人員在時(shí)間軸上可視化系統(tǒng)和應(yīng)用級(jí)別的事件悟泵,并使用平移和縮放功能敦第,在設(shè)備最后一次完全充電之后右钾,可以輕松地查看各種聚合統(tǒng)計(jì)信息,可以選擇一個(gè)應(yīng)用程序房待,檢查所選擇的應(yīng)用程序?qū)﹄姵刂笜?biāo)的影響流椒。此外温数,它還允許對(duì)兩個(gè)錯(cuò)誤報(bào)告進(jìn)行 A/B 比較安岂,突出顯示了關(guān)鍵電池相關(guān)指標(biāo)的差異。

https://github.com/google/battery-historian#building-from-source-code

配置

  • 使用Docker
  • 自己配置環(huán)境

使用Docker

docker的安裝與使用

https://yeasy.gitbooks.io/docker_practice/

在docker上運(yùn)行Battery Historian

  1. 在終端搜索Battery Historian相關(guān)的鏡像
    docker search battery
    docer_search.png
  2. 拉取battery鏡像到本地
    docker pull blystad/battery-historian-2
    docker_battery_pull.png
  3. 運(yùn)行battery-historian
    docker run --name=battery -d -p 9999:9999 blystad/battery-historian-2
    docker_run_battery.png
  4. docker簡單使用命令

查看容器 docker container ls -a
啟動(dòng)容器 docker container start/restart[重啟]
停止容器 docker container stop
刪除容器 docker container rm

或者根據(jù)官網(wǎng)的步驟來

自己配置環(huán)境

安裝Go

  • Make sure you have at least Golang version 1.8.1

https://golang.org/doc/install

  • 配置GOROOT GOROOT的作用是告訴Go 命令和其他相關(guān)工具帆吻,在哪里去找到安裝在你系統(tǒng)上的Go包,所以這里配置的是GO的安裝目錄
  • 配置GOPATH GOPATH可以簡單理解為是工程的目錄域那,所以創(chuàng)建一個(gè)GO的工程路徑
  • 配置環(huán)境變量 把Go的bin目錄放到path環(huán)境變量中
  • 檢查Go是否安裝成功,打開命令行輸入Go version


    go_version.png

安裝Python

  • 注意僅支持python2.7

https://www.python.org/

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


    python_version.png

python安裝請(qǐng)看http://www.reibang.com/p/e73768e66b8d

安裝Git

https://git-scm.com/

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


    git_version.png

安裝Java環(huán)境

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Battery Historian

  1. 下載源碼
    go get -d -u github.com/google/battery-historian/...
  2. 運(yùn)行Battery Historian
    cd $GOPATH/src/github.com/google/battery-historian
    我這里GOPATH是F:\zero1\goworkspace
    go run setup.go
    battery_setup.png

注意 這里一般會(huì)讓你下載三個(gè)第三方庫猜煮,并且一般都是下載不了
首先先運(yùn)行go run setup.go 等它報(bào)錯(cuò)停止

  • 這樣會(huì)在F:\zero1\goworkspace\src\github.com\google\battery-historian\third_party下生成third_party這個(gè)目錄次员,如果沒有則自己創(chuàng)建這個(gè)目錄


    battery_third_part.png
  • 然后自己手動(dòng)去下載這三個(gè)庫,然后copy到third_party的相對(duì)應(yīng)目錄下王带,如果沒有則自己創(chuàng)建者三個(gè)目錄

https://github.com/google/closure-compiler
https://github.com/google/closure-library/tree/master
https://github.com/markrcote/flot-axislabels

然后再次運(yùn)行go run setup.go

  • 如果closure-library報(bào)錯(cuò)淑蔚,則需要把closure-library回退到v20170409版本
    closure_lib_error.png
  • 回到closure-library目錄下
    git reset --hard v20170409
    closure_lib_reset.png
  • 然后重新copy到\third_party\closure-library下面 再次運(yùn)行go run setup.go驗(yàn)證,沒報(bào)錯(cuò)就OK了

運(yùn)行Battery Historian

注意只能在\src\github.com\google\battery-historian\運(yùn)行命令

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

run_battery.png

分析功耗報(bào)告

采集battery報(bào)告

  • 采集報(bào)告前將battery統(tǒng)計(jì)狀態(tài)重置愕撰,重置命令結(jié)束后斷開usb刹衫,測試結(jié)束后用獲取報(bào)告命令導(dǎo)出統(tǒng)計(jì)文件包
    adb shell dumpsys batterystats --reset
    默認(rèn)情況下,統(tǒng)計(jì)信息是在運(yùn)行基礎(chǔ)上維護(hù)的搞挣,Android也不記錄特定于應(yīng)用程序的用戶空間wakelock轉(zhuǎn)換的時(shí)間戳带迟。如果您希望Historian在時(shí)間線上顯示關(guān)于每個(gè)單獨(dú)喚醒鎖的詳細(xì)信息,則應(yīng)在開始實(shí)驗(yàn)之前使用以下命令啟用完整喚醒鎖報(bào)告:
    adb shell dumpsys batterystats --enable full-wake-history

注意統(tǒng)計(jì)完要關(guān)閉 adb shell dumpsys batterystats --disable full-wake-history

  • 導(dǎo)出報(bào)告
    adb bugreport bugreport.zip(6.0以及以下的囱桨,使用adb bugreport > bugreport.txt導(dǎo)出)
  • 上傳bugreport.zip文件至 http://localhost:9999
    update_bugreport.png

-然后sumbit 查看電量分析報(bào)告


battery_report.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末仓犬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子舍肠,更是在濱河造成了極大的恐慌搀继,老刑警劉巖窘面,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異叽躯,居然都是意外死亡财边,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門点骑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來制圈,“玉大人,你說我怎么就攤上這事畔况。” “怎么了慧库?”我有些...
    開封第一講書人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵跷跪,是天一觀的道長。 經(jīng)常有香客問我齐板,道長吵瞻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任甘磨,我火速辦了婚禮橡羞,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘济舆。我一直安慰自己卿泽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開白布滋觉。 她就那樣靜靜地躺著签夭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪椎侠。 梳的紋絲不亂的頭發(fā)上第租,一...
    開封第一講書人閱讀 49,764評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音我纪,去河邊找鬼慎宾。 笑死,一個(gè)胖子當(dāng)著我的面吹牛浅悉,可吹牛的內(nèi)容都是我干的趟据。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼术健,長吁一口氣:“原來是場噩夢啊……” “哼之宿!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起比被,我...
    開封第一講書人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤色难,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后等缀,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡笤妙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年膳音,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片祭陷。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡兵志,死狀恐怖醇蝴,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情想罕,我是刑警寧澤悠栓,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站按价,受9級(jí)特大地震影響闸迷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜俘枫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一腥沽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鸠蚪,春花似錦今阳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蘸鲸,卻和暖如春妖谴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來泰國打工膝舅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嗡载,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓仍稀,卻偏偏與公主長得像洼滚,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子技潘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容