adb常用命令

adb常用命令(1)

  1. adb -help :查看幫助手冊

adb shell描述
2. adb devices :檢測連接到電腦的安卓設備

adb devices
打開夜神模擬器,之後記得在命令行窗口輸入adb connect 127.0.0.1:62001,回車,可以發現已成功連接上設備(夜神模擬器)
adb connect 127.0.0.1:62001
adb devices
3. adb pull<手機路徑><本機路徑>:從手機拉取信息放到本地電腦

本機路徑容易獲取,但是手機路徑如何獲取呢?可以使用adb shell命令來獲取
獲取手機路徑
之後可以使用ls命令,來列出當前根目錄下的文件和目錄信息。sdcard手機的內部存儲,因此我們主要查看sdcard目錄即可。
在這裏插入圖片描述
那麼如何查看sdcard目錄下的文件信息呢?
可以通過cd sdcard命令來切換到sdcard目錄

在這裏插入圖片描述
不過由於我還未在手機收進行任何操作,因此我的sdcard目錄下沒有任何文件信息,如果有文件,是會在窗口中顯示出來的

  1. adb push<本機路徑><手機路徑>:從本地推送信息到手機上

比如想把電腦上的微信推送到手機上,可以輸入adb push 本機路徑可以直接拖拽想要推送的文件或其他軟件(這裏是微信)到CMD窗口,後面加上手機路徑,比如把它放在sdcard目錄中

sdcard 後面的斜槓不能少,否則會出現下面的錯誤:
在這裏插入圖片描述
However!會發現報錯:failed to copy ‘C:\Users\Public\Desktop\微信.lnk’ to ‘/sdcard’: Is a directory

這是因爲,我們推送的放在了文件裏!而不是目錄。“/sdcard”代表一個文件而不是一個目錄應該在sdcard後加"/"–>"/sdcard/"
在這裏插入圖片描述
在這裏插入圖片描述
5. adb logcat–打印日誌

在這裏插入圖片描述
可以通過重定向來將日誌保存到指定的文件中
比如將其保存到G盤的一個文件adb logcat > G:\log\logcat.txt
但是在這之前要先將日誌文件終止
通過Ctrl+c組合鍵來終止日誌的獲取
在這裏插入圖片描述
在這裏插入圖片描述

上面演示的是通過模擬器來演示通過adb對android app 的測試,那如果是真機呢?
真實android手機連接adb:

  1. 通過usb線直接連接到電腦;
  2. 下載安裝Android手機驅動(可以下載驅動精靈、手機助手等軟件)
  3. 在手機找到設置–>開發者模式–>usb調試
  4. 在彈出的對話框中選擇“允許”

adb常用命令(2)

  • adb install xxx.apk ----爲了獲取apk的安裝包所在地址,可以直接把apk拖到cmd窗口獲取,返回succes就代表成功了。
  • adb install -r xxx.apk —保留數據和緩存文件,重新安裝apk。
  • adb uninstall (應用的包名) —卸載應用
  • adb uninstall -k (應用的包名) —卸載應用但保留數據和緩衝
  • adb shell dumpsys activity | find “mFocusedActivity” —查看前臺應用activity名
  • adb connect/disconnect 通過wifi進行遠程連接手機進行調試

應用的包名可以通過**adb shell dumpsys activity | find “mFocusedActivity”**命令來獲取,具體操作可以參考我的另一篇博客使用monkey進行Android APP壓力穩定測試入門

真實的android手機WiFi遠程調試

  1. 通過usb線將手機連接到電腦;
  2. adb devices 能夠檢測到對應的設備
  3. adb tcpip 5555 確定手機和電腦端的wifi通訊端口
  4. 拔掉usb線,再通過adb connect 自己手機IP地址

如:adb connect (手機的IP地址)l連接成功後即可通過adb shell 來操作手機對app進行測試
前提條件,手機和電腦要處於同一個內網,即要連接同一個WiFi

adb shell 命令

adb 命令和 adb shell 命令的區分
adb 命令是 adb 這個程序自帶的一些命令,而 adb shell 則是調用的 Android 系統中的命令,這些 Android 特有的命令都放在了 Android 設備的 system/bin 目錄下。

adb shell—登錄設備shell(命令行的人機界面)

  • 查看wifi密碼: adb shell cat /data/misc/wifi/*.conf

  • 列出安裝在設備上的應用的包名:adb shell pm list package
    (不帶任何選項:列出所有的應用的包名)

在這裏插入圖片描述

  • -s:列出系統應用:
    adb shell pm list package -s

在這裏插入圖片描述

  • -3:列出第三方應用
    adb shell pm list package -3

在這裏插入圖片描述

  • -f:列出應用包名及對應的apk名及存放位置
    adb shell pm list package -f
    結果顯示:package:/system/app/SoundRecorder.apk=com.android.soundrecorder

  • -i:列出應用包名及其安裝來源:
    adb shell pm list package -i
    結果顯示例子:
    package:com.android.soundrecorder installer=null
    命令最後增加 FILTER:過濾關鍵字,可以很方便地查找自己想要的應用

  • 參數組合使用,例如查找第三方應用tencent的包名、存放位置及安裝來源:
    adb shell pm list package -f -3 -i tencent

在這裏插入圖片描述

  • pm path 列出對應包名的 .apk 位置
    adb shell pm path com.tencent.mm

在這裏插入圖片描述

  • pm list instrumentation , 列出含有單元測試 case 的應用,後面可跟參數 -f (與 pm list package 中一樣),以及 [TARGET-PACKAGE]

  • pm dump , 後跟包名,列出指定應用的 dump 信息,可查看應用的各種信息
    (建議最好重定向到指定文件,不要在cmd窗口查看信息,因爲文件可能會很長)
    adb shell pm dump com.tianwen,jjrp > G:\log\tainwenDetail.txt

  • pm install , 安裝應用
    目標 apk 若是存放在 PC 端,用 adb install 安裝
    目標 apk 若是存放於 Android 設備上,用 pm install 安裝
    如:
    pm uninstall , 卸載應用,同 adb uninstall , 後面跟的參數都是應用的包名
    pm clear , 清除應用數據
    pm set-install-location , pm get-install-location , 設置應用安裝位置,獲取應用安裝位置

am命令

  • am start :啓動一個 Activity,這裏以啓動我們設備的“設置”應用爲例
    adb shell am start -n com.android.settings/.Settings
    cmd輸出
    Starting: Intent { cmp=com.android.settings/.Settings }
  • 若不清楚“設置”的包名,可以通過命令
    adb shell dumpsys activity | find “mFocusedActivity”

先找出當前開啓的設備,然後複製路徑即可(不過這樣一來,可能有人會說,那還要這命令有何用?自己手動打開不就好了嗎,打開了還要手動關閉,再在命令行打開……我也只能說,裝逼用~哈哈哈)

在這裏插入圖片描述

  • input text : 發送文本內容,但是改命令無法發送中文
    adb shell input text [文本內容(英文)]
    如圖

在這裏插入圖片描述

  • input tap :對屏幕發送一個觸摸事件
    點擊屏幕上座標爲 200 200 的位置
    adb shell input tap 200 200
  • input keyevent ,:發送按鍵事件
    adb shell input keyevent

先介紹到這裏啦~還有關於monkey命令的,可查看使用monkey進行Android APP壓力穩定測試入門

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