adb的全稱爲Android Debug Bridge,就是起到調試橋的作用。通過adb命令,可以很方便的在pc端操作android設備。
adb devices
描述:在執行adb命令前,最好知道連接有多少可用設備連接到adb服務。 您可以使用該命令生成一個已連接的設備列表。
輸出的每個實例的格式如下:
[serialNumber] [state]
adb打印的每個實例的狀態信息:
- Serial number — adb通過設備端口號創建的字符串,以其唯一標識設備實例。這個特殊號碼的格式爲<type>-<consolePort>。
-
State — 實例的連接狀態。支持三個狀態:
-
offline
— 此實例沒有與adb相連接或者無法響應. -
device
— 此實例正與adb服務器連接。注意這個狀態並不能百分之百地表示在運行和操作Android系統,因此這個實例是當系統正在運行的時候與adb連接的。然而,在系統啓動之後,就是一個模擬器/設備狀態的正常運行狀態了
-
- 如果當前沒有模擬器/設備運行,adb則返回 no device .
如果有多個模擬器/設備實例在運行,在發佈adb命令時需要指定一個目標實例。這樣做,請使用-s 選項的命令。在使用的-s 選項是
adb [ -d|-e|-s <serialNumber>] <command>
描述:如上所示,給一個命令指定了目標實例,這個目標實例使用由adb分配的序列號。你可以使用 devices 命令來獲得運行着的模擬器/設備實例的序列號。
示例如下:
adb -s emulator-5556 install helloWorld.apk
注意這點,如果沒有指定一個目標模擬器/設備實例就執行 -s 這個命令的話,adb會產生一個錯誤.
參數信息:
- -s — 指定 device or emulator
- -d — device
- -e — emulator
- serialNumber — 設備唯一標識
- command — 要執行的命令,比如說:install 123.apk
從模擬器/設備中拷入或拷出文件
可以使用adb pull ,push 命令將文件複製到一個模擬器/設備實例的數據文件或是從數據文件中複製。install 命令只將一個.apk文件複製到一個特定的位置,與其不同的是,pull 和 push 命令可令你複製任意的目錄和文件到一個模擬器/設備實例的任何位置。
從模擬器或者設備中複製文件或目錄,使用(如下命令):
adb [-s <serialNumber>] pull <remote> <local>
將文件或目錄複製到模擬器或者設備,使用(如下命令):
adb [-s <serialNumber>] push <local> <remote>
在這些命令中, <local> 和<remote> 分別指通向自己的發展機(本地)和模擬器/設備實例(遠程)上的目標文件/目錄的路徑
下面是一個例子:
adb push D:\foo.txt /sdcard/foo.txt
備註:還可以通過ddms工具,進行文件的導入導出
安裝&卸載軟件
你可以使用adb從你的開發電腦上覆制一個應用程序,並且將其安裝在一個模擬器/設備實例。像這樣做,使用install 命令。這個install 命令要求你必須指定你所要安裝的.apk文件的路徑:
adb [-s serialName] install <path_to_apk>
adb install [-l] [-r] [-s] <file> - push this package file to the device and install it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data)
('-s' means install on SD card instead of internal storage)
adb uninstall <軟件名/包名>
adb uninstall -k <軟件名/包名>
如果加 -k 參數,爲卸載軟件但是保留配置和緩存文件.
ADB Shell命令進入Android端命令窗口後,可以輸入shell命令來進行常用操作:
cd——改變當前目錄
pwd——查看當前所在目錄完整路徑
ls——查看目錄或者文件的屬*,列舉出任一目錄下面的文件
mkdir——建立目錄
cp——拷貝文件
rm——刪除文件和目錄
mv——移走目錄或者改文件名
chmod/chown——權限修改
clear——清屏
mount——加載一個硬件設備
su——在不退出登陸的情況下,切換到另外一個人的身份
grep——文本內容搜索
find——文件或者目錄名以及權限屬主等匹配搜索
kill——可以殺死某個正在進行或者已經是dest狀態的進程
df——命令用來檢查文件系統的磁盤空間佔用情況