前提:
userdebug版本已經獲取root (adb root, adb remount)
或eng版本
腳本
echo "">/data/local/tmp/battery.log
while [ 0 -eq 0 ];
do
local Temperature=$(dumpsys battery | grep temperature |busybox awk -F: '{ print $2 }' | busybox tr -d [:blank:] | busybox tr -d '\r' | busybox tr -d '\n' | busybox awk '{print $1/10}')
local Voltage=$(dumpsys battery| grep voltage | busybox awk -F: '{ print $2 }' | busybox tr -d [:blank:] | busybox tr -d '\r' | busybox tr -d '\n' | busybox awk '{print $1/1000}' )
local Level=$(dumpsys battery| grep level | busybox awk -F: '{ print $2 }' |busybox tr -d [:blank:] |busybox tr -d '\r' | busybox tr -d '\n')
echo "$(date +%m%d%H%M%S) ${Temperature} ${Level} ${Voltage}" >> /data/local/tmp/battery.log
sleep 9.9
done
步驟:
- 下載battery.sh
- 放入到手機中
adb push battery.sh /data/local/tmp/
- 放入到手機中
- 改變文件屬性爲可執行
adb shell chmod 777 /data/local/tmp/battery.sh - 執行
adb shell nohup /data/local/tmp/battery.sh - 從PC拔掉usb cable執行你的測試,比如充電測試
- 測試完畢後重新插入usb cable到pc
- 導出log文件
adb pull /data/local/tmp/battery.log battery.txt
結果分析:
結果如下
0829140159 32.5 49 3.848
0829140209 32.5 49 3.848
0829140219 32.5 49 3.848
0829140229 32.5 49 3.848
0829140239 32.5 49 3.848
第一列:
日期(月日時分秒)
第二列:電池溫度Temperature, 單位攝氏度
第三列:電池Level, 電池百分比
第四列: 電池電壓, 單位V
曲線繪製:
batterymon.sh -g -d /tmp
-d /tmp 是我的battery.txt所在的目錄