ADB工具
- ADB簡介
- 環境配置
- 常用命令
- 1. 登錄設備
- 2. 取得root權限
- 3. 查看連接的設備
- 4. 從PC端發送檔案到設備端
- 5. 從設備端拉取檔案到PC端
- 6. 查看第三方應用
- 7. 獲取應用版本號
- 8. 列出系統應用
- 9. 查看cpu的架構資訊和GPU資訊
- 10. 查看設備的作業系統
- 11. 查看記憶體資訊
- 12. getprop命令
- 13. 查看日志
- 14. 查看內核版本
- 15. adb shell中settings命令
- 16. 抓取kernel log
- 17. 進入fastboot模式
- 18 安裝卸載應用
- 19. dumpsys命令
- 20. 查看Android系統版本和api
- 21. 查看當前啟動APP的應用名和包名
- 22. 截屏
- 23. 殺掉行程
- 24. adb模擬按鍵事件
- 25. 啟動行程
- 26. 查看應用版本
- 27. 發送廣播
- adb網路連接設備方法
- 使用busybox
- adb中執行二進制檔案
ADB簡介
為了能通過shell對Android設備進行除錯和操作,則需要ADB工具(Android Debug Bridge)作為橋梁連接Android設備和PC端,
環境配置
PC端安裝ADB軟體,安裝完成后設定adb主程式所在路徑至環境變數中,方便cmd中直接使用adb命令;設定需要連接的Android設備處于開發者模式,
常用命令
1. 登錄設備
adb shell
adb -s 設備名 shell
2. 取得root權限
某些時候需要root權限對Android系統進行操作,例如使用chmod命令時,使用adb shell命令連接Android設備依次執行以下命令可取得root權限,
adb root
adb disable-verity
adb reboot
adb root
adb remount
- 需注意的是
user版Android系統是無法取得root權限的!
3. 查看連接的設備
adb devices
4. 從PC端發送檔案到設備端
adb push 本地檔案路徑 遠程檔案路徑
5. 從設備端拉取檔案到PC端
adb pull 遠程檔案路徑 本地檔案路徑
6. 查看第三方應用
adb shell pm list packages -3
7. 獲取應用版本號
adb shell pm dump com.android.dialer | findstr “versionName”
- 需知道應用的包名
8. 列出系統應用
adb shell pm list packages -s
9. 查看cpu的架構資訊和GPU資訊
adb shell cat /proc/cpuinfo
adb shell dumpsys | findstr GLES // 獲取GPU資訊
10. 查看設備的作業系統
adb shell uname
-r 查看作業系統的版本
-m 查看作業系統的位數
11. 查看記憶體資訊
dumpsys meminfo
12. getprop命令
ro.product.model------設備型號
ro.product.brand------設備品牌
ro.product.name------設備名
13. 查看日志
adb shell logcat
14. 查看內核版本
adb shell cat proc/version
15. adb shell中settings命令
查看螢屏待機時間:
settings get system screen_off_timeout
查看wifi開關情況:
settings get global wifi_on
當前背光亮度:
settings get system screen_brightness
16. 抓取kernel log
adb shell dmesg > /data/local/tmp/dmesg.txt
或者:
cat proc/kmsg
17. 進入fastboot模式
adb reboot bootloader //
之后可使用以下方式燒錄:
fastboot flash 磁區名 燒錄檔案名
18 安裝卸載應用
adb install 電腦中apk的路徑 //安裝電腦中的apk到手機
有時候會出現Read-only的錯誤,我們可以使用強制安裝命令來安裝apk
adb install -r 電腦中apk的路徑
// 對于有些僅用于測驗的apk,需使用-t選項
查看已安裝應用
adb shell pm list packages
卸載應用
adb uninstall apk完整包名
無論安裝還是卸載最終都會顯示Success
-t引數用于測驗包
首先:adb shell pm list packages -s 找到要洗掉的包名
獲取包名的地址:adb shell pm path com.xx.xx
掛載系統讀寫權限:adb remount
洗掉包:adb shell rm /system/app/OldDriver/OldDriver.apk
最后adb reboot重啟就OK
19. dumpsys命令
adb shell dumpsys package com.examle.xx
// 輸出資訊中versionName就是應用版本號
adb shell dumpsys power
// 查看WakeLock鎖的個數等
20. 查看Android系統版本和api
獲取系統版本:adb shell getprop ro.build.version.release
獲取系統api版本:adb shell getprop ro.build.version.sdk
也可查看組態檔:cat system/build.prop
21. 查看當前啟動APP的應用名和包名
dumpsys window -w | grep “name=”
例如以下結果:
mSurface=Surface(name=com.xxx.elauncher/com.xxx.elauncher.activity.MainActivity)/@0xcc80e9b
22. 截屏
adb shell screencap -p /sdcard/01.png
// 截取當前的螢屏
23. 殺掉行程
知道行程號:adb shell kill pid
adb shell am force-stop 包名
24. adb模擬按鍵事件
這條命令相當于按了設備的Backkey鍵
adb shell input keyevent 4
可以解鎖螢屏
adb shell input keyevent 82
25. 啟動行程
例如啟動計算器
adb shell am start -n com.android.calculator2/com.android.calculator2.Calculator
26. 查看應用版本
adb shell dumpsys com.seewo.elauncher | findstr version
27. 發送廣播
adb shell am broadcast -a com.XXXX
adb網路連接設備方法
- 方法一
- Android設備端下載“無線ADB”工具,需要root權限
- 方法二
- 不需要root權限
- 手機打開開發者模式,然后打開USB除錯
- 使用USB資料線連接手機和電腦
- 在PC端打開cmd命令視窗,輸入adb devices ,可以看到已經連接的設備
- 輸入adb tcpip 8888 (設定埠號為8888)
- 斷開手機和電腦的連接
- 輸入adb connect 設備IP地址:8888,連接成功
使用busybox
為了可以在adb shell端使用Linux命令,可以安裝busybox工具到Android系統;去官網下載編譯好的busybox工具,push到Android端,進入shell對應目錄執行以下命令
chmod 775 busybox-armv8l
./busybox-armv8l --install
adb中執行二進制檔案
需將bin檔案拷貝到/data/local/tmp目錄下,修改檔案權限:chmod 777
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/196389.html
標籤:python
