ADB全稱Android Debug Bridge, 是android sdk里的一個工具, 用這個工具可以直接操作管理android模擬器或者真實的andriod設備(手機),故在其實工作可以給我們很多幫助,下面將總結下之前工作中常用到的adb命令:
- adb help, 列出所有的選項說明及子命令
- adb devices , 獲取設備列表及設備狀態
- adb get-state , 獲取設備的狀態,設備的狀態有 3 鍾,
device,offline,unknown,其中device:設備正常連接,offline:連接出現異常,設備無響應,unknown:沒有連接設備 - adb kill-server , adb start-server , 結束 adb 服務, 啟動 adb 服務,通常兩個命令一起用,設備狀態異常時使用 kill-server,然后運行 start-server 進行重啟服務
- adb logcat , 打印 Android 的系統日志 adb logcat -c,清除日志
- adb bugreport , 打印dumpsys、dumpstate、logcat的輸出,也是用於分析錯誤,輸出比較多,建議重定向到一個文件中,如adb bugreport > d:\bugreport.log
- adb install , 安裝應用,adb install -r 重新安裝
- adb uninstall , 卸載應用,后面跟的參數是
應用的包名,請區別於apk 文件名 - adb pull , 將 Android 設備上的文件或者文件夾復制到本地,如例如復制 Sdcard 下的 pull.txt 文件到 D 盤:adb pull sdcard/pull.txt d:\,重命名:adb pull sdcard/pull.txt d:\rename.txt
- adb push , 推送本地文件至 Android 設備,如推送 D 盤下的 push.txt 至 Sdcard:adb push d:\push.txt sdcard/ sdcard 后面的斜杠不能少
- adb reboot , 重啟 Android 設備, adb reboot recovery,重啟到Recovery界面 adb reboot bootloader,重啟到bootloader界面
- adb root , adb remount,可以直接已這兩個命令獲取 root 權限,並掛載系統文件系統為可讀寫狀態
- adb get-serialno,返回設備序列號SN值 adb get-product,獲取設備的ID
- adb forward tcp:5555 tcp:8000,做為主機向模擬器或設備的請求端口
- adb shell,進入設備shell
- adb shell pm list package,列出所有的應用的包名
- adb shell screencap -p /sdcard/screen.png ,截屏,保存至 sdcard 目錄
- adb shell screenrecord sdcard/record.mp4,執行命令后操作手機,ctrl + c 結束錄制,錄制結果保存至 sdcard
- adb shell wm size,獲取設備分辨率
- adb shell pm dump 包名,列出指定應用的 dump 信息
- adb shell pm path 包名, 列出對應包名的 .apk 位置
- adb shell monkey –p 程序包 –v 測試次數 ,比如“adb shell monkey –p com.htc.Weather –v 20000”意思是對com.htc.Weather 這個程序包單獨進行一次20000次的monkey測試,其中程序包名稱可以在串口終端這句命令獲得:ls data/data 顯示所有程序包
- adb shell ps | grep [process],找出對應的進程pid adb shell dumpsys meminfo [pid],根據進程pid查看進程占用的內存 或者 adb shell dumpsys meminfo<package_name>,package_name 也可以換成程序的pid,pid可以通過 adb shell top | grep app_name 來查找
- adb shell ps, 查看當前終端中的進程信息
注:
adb 使用的端口號,5037,有必要記一下
Adb Shell命令下使用的一些linux命令
命令:
ls // 查看目錄
date // 打印或設置當前系統時間
cat /proc/meminfo // 查看內存信息
cat /proc/cpuinfo // 查看CPU信息
