Adb命令操作
目錄
adb的一些基礎命令和幫助文件的操作,adb目前一些操作命令是基礎小白無法使用以及現在沒有什麼用的操作【比如廣播,現在手機這個功能都被限制了,簡訊廣播和電話廣播,都只能通過資料庫實現】
adb version 檢視adb的版本,但是我們一般用於檢視adb的環境是否搭建完成。
adb help 檢視adb的幫助檔案,如果忘記操作命令可以使用,下面有一些這些內容的翻譯
adb logcat 檢視全部日誌
adb logcat > d:\test.txt 將日誌資訊儲存在d盤的test.txt檔案中,不要考慮放在c盤,會有許可權問題
adb logcat -s 檔名 根據檔名查詢日誌
adb logcat -c 清楚舊日誌
adb shell 進入adb編輯環境
adb install 檔名.apk-r 覆蓋安裝,保留資料和快取檔案
adb uninstall -k <檔案安裝的包名> 刪除軟體
adb shell dumpsys package <包名> 檢視app相關所有資訊,包括action,codepath,version,需要的許可權等等資訊
adb shell pm path <包名> 檢視app的路徑,如adb shell pm path com.vphone.helper
adb shell dumpsys package <package_name> 除了檢視apk的版本資訊,還有別的資訊
adb shell dumpsys window | findstr mCurrentFocus 檢視當前執行的包名和Activity
adb shell pm path <PACKAGE> 輸出安裝包的APK路徑
adb shell pm clear <PACKAGE> 刪除與包相關的所有資料:清除資料和快取
adb shell am start -W<package_name>/.<activity_class_name> 獲得應用的啟動時間,可以很方便地獲取應用的啟動時間
檔案
adb push <local>...<remote> 拷貝檔案/目錄到裝置
adb pull [-a] <remote>...<local> 從裝置拷貝檔案/目錄,-a引數保留了檔案的時間戳和模式
adb shell ls [-al] 列出目錄下的檔案和資料夾,可選引數-al可檢視檔案和資料夾的詳細資訊
adb shell cd <folder> 進入資料夾
adb shell cat <filename> 檢視檔案
adb shell rename path/oldfilename path/newfilename 重新命名檔案
adb shell rm path/filename -r 可選引數用於刪除資料夾及下面的所有檔案 eg:adb shell rm -r <folder> 刪除檔案/資料夾
adb shell mv path/filename newpath/filename 移動檔案
adb shell cp file newpath/file1 拷貝檔案
adb shell mkdir path/folder 建立目錄
adb shell chmod 777 filename 設定檔案最高讀寫許可權
總結一下 adb shell後面的命令大部分都是cmd直接自帶的命令名稱:adb幫助檔案 版本:Android除錯橋版本1.0.36 翻譯:lin 命令 -a -指示adb監聽連線的所有介面 -d -將命令定向到唯一連線的USB裝置,如果存在多個USB裝置,則返回錯誤。 -e -將命令定向到唯一正在執行的虛擬機器。如果有多個模擬器正在執行,則返回錯誤。 -s<specific device> -將命令定向到具有給定序列號或限定符。覆蓋安卓序列號環境變數。 -p<product name or path> 等待-簡單的產品名稱,如“sooner”,或產品的相對/絕對路徑輸出目錄如“out/target/product/easer”。如果未指定-p,則Android產品使用了環境變數,它必須做一條絕對的道路。 -H -adb伺服器主機的名稱(預設:localhost) -P -adb伺服器的埠(預設值:5037) devices[-l] -列出所有連線的裝置('-l'還將列出裝置限定符) connect<host>[:<port>] -通過TCP/IP連線到裝置,如果未指定埠號,則預設使用埠5555。 disconnect[<host>[:<port>]] -從TCP/IP裝置斷開連線。如果未指定埠號,則預設使用埠5555。不使用其他引數使用此命令將從所有連線的TCP/IP裝置斷開連線。 裝置命令: adb push<local>。。。<遠端> -將檔案/目錄複製到裝置 adb pull[-a]<遠端>。。。<本地> -從裝置複製檔案/目錄(-a保留檔案時間戳和模式) adb sync[<directory>] -僅當更改時複製主機->裝置(-l表示列表,但不復制) adb shell[-e escape][-n][-Tt][-x][命令] -執行遠端shell命令(如果沒有命令,則為互動式shell) (-e:選擇轉義符或“無”;預設值為“~”) (-n:不從stdin讀取) (-T:禁用PTY分配) (-t:強制PTY分配) (-x:禁用遠端退出程式碼和stdout/stderr分離) adb emu<command> -執行模擬器控制檯命令 adb logcat[<filter spec>] -檢視裝置日誌 adb jdwp -列出託管jdwp傳輸的程序的pid adb install[-lrtsdg]<file> -將此程式包檔案推送到裝置並安裝 (-l:正向鎖定應用) (-r:替換現有應用程式) (-t:允許測試包) (-s:在SD卡上安裝應用程式) (-d:允許版本程式碼降級(僅限可除錯的包)) (-g:授予所有執行時許可權) adb install-multiple[-lrtsdpg]<file…> -將此程式包檔案推送到裝置並安裝 (-l:正向鎖定應用) (-r:替換現有應用程式) (-t:允許測試包) (-s:在SD卡上安裝應用程式) (-d:允許版本程式碼降級(僅限可除錯的包)) (-p:部分應用程式安裝) (-g:授予所有執行時許可權) adb uninstall[-k]<package> -從裝置中刪除此應用程式包('-k'表示保留資料和快取目錄) adb bugreport[<path>] -返回裝置中應包含在壓縮錯誤報告中的所有資訊。 如果<path>是一個檔案,則錯誤報告將另存為該檔案。 如果<path>是一個目錄,則錯誤報告將以裝置提供的名稱儲存在該目錄中。 如果省略<path>,錯誤報告將以裝置提供的名稱儲存在當前目錄中。 注意:如果裝置不支援壓縮錯誤報告,則錯誤報告將在stdout上輸出。 adb backup[-f<file>][-apk |-noapk][-obb |-noob][-shared-noshared][-all][-system |-nosystem][<packages…>] -將裝置資料的存檔寫入<file>。 如果沒有提供-f選項,則寫入資料 收件人“備份.ab“在當前目錄中。 (-apk |-noapk啟用/禁用.apk本身的備份在存檔中;預設值為noapk。) (-obb |-noob啟用/禁用任何已安裝的apk擴充套件的備份 (aka.obb)與每個應用程式關聯的檔案;預設值是noapk。) (-shared-noshared啟用/禁用裝置的備份共享儲存/SD卡內容;預設為noshared。) (--all備份所有已安裝應用程式的所有方法) (-system-nosystem切換-all是否自動包含系統應用程式;預設為包括系統應用程式) (<packages…>是要備份的應用程式列表。如果傳遞-all或-shared標誌,然後傳遞包列表是可選 的。上顯式給出的應用程式即使-nosystem也會包含命令列通常會導致省略。) adb restore<file> -從備份檔案還原裝置內容 adb disable verity -在USERDEBUG版本上禁用dm verity檢查 adb enable verity -在USERDEBUG版本上重新啟用dm verity檢查 adb keygen<file> -生成adb公鑰/私鑰。私鑰儲存在<file>中,公鑰儲存在檔案為.pub字尾檔案中。 adb help -顯示此幫助訊息 adb version -顯示版本號 指令碼編寫: adb wait-for[-<transport>]-<state> -等待裝置處於給定狀態:裝置、恢復、側載或引導載入程式 transport(傳輸方式):usb、本地或任何[預設值=任意] adb start-server -確保有一個伺服器正在執行 adb kill-server -如果伺服器正在執行,則終止它 adb get-state -列印:離線|引導載入程式|裝置 adb get-serialno -列印:<serial number> adb get-devpath -列印:<device path> adb remount -以讀寫方式重新裝載裝置上的/system、/vendor(如果存在)和/oem(如果存在)分割槽 adb reboot [bootloader|recovery] -重新引導裝置,也可以選擇進入引導載入程式或恢復程式。 adb reboot sideload -在恢復程式中將裝置重新引導到sideload模式(需要adb root)。 adb reboot sideload-auto-reboot -重新引導到側載模式,然後在側載之後自動重新引導,而不管結果如何。 adb sideload<file> -側載給定的包 adb root -使用root許可權重新啟動adbd守護程式 adb unroot -在沒有root許可權的情況下重新啟動adbd守護程式 adb usb -重新啟動監聽usb的adbd守護程序 adb tcpip<port> -在指定的埠上重新啟動偵聽TCP的adbd守護程式 實驗錯誤 adb forward系列; adb reverse系列;