ADB高級應用

轉自:http://blog.csdn.net/zzp16/article/details/40616337

一、利用無線來查看adb shell

adb tcpip 5555

連接:

adb connect IP:5555

見後文《調試注意事項》

二、模擬按鍵

adb shell input keyevent “value”

部分常見按鍵對應值:
Key | Constant Value
Back 4
Power 26
Menu 82
Home 3
Search 84

方向鍵:
上 19
下 20
左 21
右 22
確認(類似單擊):23

三、adb shell下查看系統盤符

adb shell df

四、adb shell下掛載系統

adb shell
busybox mount -o remount,rw /system

五、adb shell 下移除USB設備

adb shell
vdc unshare /mnt/sdcard ums

六、adb shell 下查看內核信息

cat /proc/kmsg &

七、查看build配置的值(以heap爲例)

adb shell getprop | grep heap

八、通過sendevent 模擬按鍵以及鼠標

直接用input實現:

adb shell input keyevent 3
adb shell input tap 250 250
adb shell input swipe 250 250 300 300

九、查看屏幕顯示的fps
開啓系統屬性:debug.sf.fps=1
然後直接logcat -s SurfaceFlinger -v time
(看SurfaceFlinger裏面打印出來時多少)

十、查看當前運行程序棧

dumpsys window windows | busybox grep “Window #”

十一、查看當前設備DDR運行頻率

cat /proc/clocks | busybox grep “ddr”

十二:ADB logcat過濾
adb logcat -s TAG_NAME
adb logcat -s TAG_NAME_1 TAG_NAME_2
adb logcat “*:PRIORITY”
adb logcat -s TAG_NAME:PRIORITY
adb logcat -s TAG_NAME_1:PRIORITY_1 TAG_NAME_2:PRIORITY

優先級(PRIORITY)分爲以下幾種:

V – Verbose
D – Debug
I – Info
W – Warning
E – Error
F – Fatal
S – Silent

範例:

adb logcat *:E 查看異常信息
adb logcat -s “TAG” 過濾TAG

十三:查看設備是否擁有su權限(4.2及之前版本)

adb shell
ps
會列出系統進程
選一個u開頭的 表示普通程序`
su u0_a8
切換到u0_a8下 #號變 >
su
如果可以執行,>號爲#號,則表示有su權限,如果提示權限問題,就沒有su權限

十四:查看應用引用
adb 查看Android應用所有引用

adb shell
ps (查看PID號)
cd /proc/PID號/fd
busybox ls -l

也將文件拷貝出來

cat xxx > /sdcard/xxx

十五:獲取運行內存/CPU信息

adb shell
cat /proc/meminfo
cat /proc/cpuinfo

十六:抓取Logcat信息及kmsg信息
# cat proc/kmsg >/data/kmsg.txt &
# logcat -v time >/data/logcat.txt &

十七:查看Android(手機\平板\開發板等)設備信息

adb shell dumpsys package > package.xml

   (此命令可顯示手機(平板)可供應用查詢到的library和feature)

十八、輸出所有已經安裝的應用

adb shell pm list packages -f

十九、查看預安apk

adb shell pm list packages -3

二十:清除logcat緩衝區
(用這個命令來清除一些重複出現的過時的日誌)

adb logcat -c

二十一、目前認爲最牛的adb命令:截取屏幕圖片
截圖直接保存到電腦

adbshellscreencapp|seds/\r //’ > screen.png

執行adb shell 將\n轉換\r\n, 因此需要用sed刪除多餘的\r
如果直接當命令用還可以用 alias 包裝裝起來

aliasandscreencap="adbshellscreencapp|seds/\r //’”
$ and-screencap > screen.png

以後就可以方便的用and-screencap > 直接將截圖保存到電腦上了

其他入門級但也比較常見的adb命令
1、查看所有已經連接上的設備

adb devices
如果有多個設備連接到電腦,可以通過 adb -s DEVICE_ID 來指定用哪一個

2、掛載system分區(當然需要設備支持)
adb remount

3、安裝與卸載應用
adb install

舉例

adb install -r ~/chrome.apk

卸載應用:
adb uninstall <軟件名>
adb uninstall -k <軟件名> 如果加 -k 參數,爲卸載軟件但是保留配置和緩存文件

舉例

adb uninstall com.android.chrome

4、啓動一個Activity
adb shell am start 包名/.類名
adb shell am start 包名/類的全名

5、登錄設備shell

adb shell –這個命令將登錄設備的shell.
adb shell

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