【Android 電量優化】電量優化 ( Battery Historian 環境要求 | 電量分析報告 | 電量優化三原則 | 電量優化注意事項 )



參考 Google 官方文檔 : 優化電池續航時間





一、Battery Historian 環境要求



【Android 電量優化】電量優化 ( 耗電量測試 | Battery Historian 簡介 | apt 源更新 | Docker 安裝 | Battery Historian 安裝 ) 博客中主要進行了 VMWare 虛擬機環境下 Ubuntu 18.04.4 系統中安裝 Battery Historian ;

【Android 電量優化】電量優化 ( 獲取電量分析報告 | 阿里雲服務器搭建 Battery Historian | 上傳並生成分析報告 ) 博客中 , 講解了在阿里雲服務器上搭建 Battery Historian , 並在本地導出手機的電量報告 , 使用該工具分析電量時 , 每一步操作響應都很慢 ;


在之前使用 Battery Historian 時 , 搭建好環境之後 , 訪問很慢 , 找了半天原因 , 發現使用 Battery Historian 必須翻牆 , 否則基本無法使用該工具進行電量分析 , 卡了半天 ; 既然翻牆的話 , 那麼服務器和本地都翻牆吧 ;



這裏給出最佳實踐 : 必須翻牆 ; 之前訪問巨慢 , 發現是沒有翻牆的原因 ;


① 服務器可翻牆 : 在阿里雲香港服務器上搭建 Battery Historian ;

② 本地電腦翻牆 : 本地訪問 http://8.210.151.183:9999/ 地址 , 必須翻牆 , 否則無法使用 ;





二、上傳電量報告



必須翻牆才能正常使用 , 否則這裏點擊 Browse , 選擇文件後 , 沒有任何響應 ;


1 . 選擇文件並上傳 : 訪問 http://8.210.151.183:9999/ 地址 , 點擊頁面中的 Browse 按鈕 , 從本地磁盤中選擇 bugreport.txt 或 bugreport.zip 文件 , 選擇完畢後 , 點擊右側的 Submit 按鈕 , 提交上傳 ;

在這裏插入圖片描述


2 . 等待上傳完成 : 等待上傳完畢 , 這個上傳的比較慢 , 大概幾分鐘吧 ;

在這裏插入圖片描述


3 . 分析階段 : 這個分析階段很短 , 半分鐘左右 ;

在這裏插入圖片描述


4 . 查看生成的報告 : 在下面的圖標中可以分析出每個硬件設備的激活時間 , 及耗電量 ;

在這裏插入圖片描述


5 . 選擇不同的應用進程對應的報告 : 點擊 App Selection 可以選擇不同的應用 , 進行分析 ;

在這裏插入圖片描述





三、Battery Historian 電量分析報告



1 . 電量分析報告 :

① 報告內容 : 該報告中分析的是整個系統的各個硬件模塊的耗電量 , 不是針對某一個應用的報告 ;

② 起始時間 : 從調用 adb shell dumpsys batterystats --reset 方法重置電池狀態開始 ;

③ 終止時間 : 到調用 adb bugreport bugreport.zip 導出電量報告結束 ;




2 . 報告中的各項指標 :


在這裏插入圖片描述

Reboot : 重啓 ;

CPU running : CPU 運行耗電量 ; 這個一般是一直再運行耗電的 , 無法分析出是哪個 APP 消耗了多少 CPU ;

Userspace wakelock ( all ) : 用戶拿到 wakelock , 保持屏幕不息屏的狀態 ;

Screen : 屏幕耗電 , 沒有耗電的狀態 , 說明屏幕處於息屏狀態 , 有耗電 , 說明屏幕處於喚醒狀態 ;

Plugged : 是否處於充電狀態 ;

黑色的線 : 表示電量值 , 0 ~ 100% , 使用時一直在掉 , 充電時 , 一直在提高 ;

Battery Level : 每消耗 1% 的電量 , 提示一次 ; 可以判斷每 1% 的電量使用了多長時間 ;



3 . 查看指定應用的耗電量 : 在 App Selection 中選擇對應的應用進程 ID , 可以查看指定應用的電量消耗 ;





四、電量優化三原則



電量優化三原則 :


① 減少操作 : 減少後臺處理的次數 , 減少多於操作 ; 如下載數據時 , 如果有緩存數據 , 使用緩存數據 , 儘量少啓用 WIFI 或 5G 模塊 , 藍牙連接時 , 記住藍牙地址 , 嘗試直接連接這個藍牙 , 不要每次都啓動藍牙搜索 , 該操作功耗巨大 ;

② 推遲操作 : 有些操作是否可以在充電時完成 , 如軟件更新 , 數據備份雲端等 , 獲取最新版本號 , 緩存雲端數據 , 儘量都在插着數據線時進行 ; 能充電時執行就在充電時執行 , 能在 WIFI 執行 , 就不再 5G 情況下執行 ;

③ 合併操作 : 將啓用硬件設備模塊的操作 , 集中執行 , 如獲取位置 , 上傳下載 , 一次啓動硬件模塊 , 密集執行多個任務 , 不要隔一段時間喚醒一次 , 只執行單個工作 ;





五、電量優化注意事項



電量優化注意事項 :


① Wakelock 儘量少的使用 , 使用 JobScheduler / Alarm 替代前者 ;

② 硬件及時釋放 : 對於硬件設備的調用請求 , 使用完畢後及時關閉 , 如 GPS , 藍牙 , WIFI 等模塊 , 不要長時間處於激活狀態 , 用完就關閉釋放 ;

③ 任務執行環境優先級 : 某些不是很着急的任務 , 儘量在充電狀態下執行 , 充電 > 不充電 , WIFI > 2G/3G/4G/5G ;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章