adb 全稱 Android Debug Bridge(調試橋)。
一,adb的作用
adb是一個多用途工具,用來管理模擬器或裝置。
二,組成結構
adb是C/S模式的程式,它包含三個組件:client,server,deamon。
1,Client是運行在我們自己的電腦上。可以通過adb命令來啟動Client。其他的android工具,如ADT外掛程式和DDMS也可以建立client。
2,Server作為背景程式也是運行在我們自己的電腦上。它的作用是負責Client與Deamon之間的通訊。
3,Deamon也是作為後太程式啟動並執行,不過是運行在模擬器執行個體或裝置執行個體。
三,連接埠問題
1,Server端啟動綁定的是原生5037連接埠。Client端用5037與伺服器端對話。
2,任何Deamon都會取5555到5585之間兩個連續的連接埠,其中奇數連接埠是負責與adb連結,偶數連接埠是負責與控制台連結。伺服器端通過掃描5555到5585之間的奇數連接埠來尋找模擬器或裝置執行個體並與找到的建立連結。
四,啟動和終止adb伺服器
1,adb start-server 啟動adb伺服器。
2,adb kill-server 終止adb伺服器。
3,在linux系統下,有時候會涉及到許可權問題而需要以root使用者來運行adb伺服器。
五,查看模擬器或裝置
1,有時候需要確定當前有那些可用的裝置或模擬器,可使用命令:adb devices 。
例如:
~$ sudo /opt/android/android-sdk/tools/adb devices
List of devices attachedemulator-5554 deviceHT95LKF00945 device
這裡就列出了兩個裝置,第一個是模擬器,第二個是手機。
注意:這裡是用root使用者來啟動adb伺服器和執行adb命令,不然就會出現“no permissions”
2,如果有多個裝置在啟動並執行話,發送命令時必須用上-s,-e或-d這幾個參數指定目標裝置。
adb -e 發送命令到模擬器。
adb -d 發送命令到到USB裝置,比如手機。
adb -s 指定一個目標。adb -s <serialNumber> <command>install <path-to-apk>
例如:adb -s emulator-5554 install helloWorld.apk
六,執行shell命令
adb shell 或 adb shell [<shellCommand>]
後者在執行完命令後會退出,兩個命令的區別一測試便知了。
七,安裝apk程式
adb install <path-to-apk>
八,上傳下載檔案
adb pull <remote> <local> 從裝置上下載檔案
adb push <local> <remote> 上傳檔案到裝置
九,其他功能
help 查看adb所支援的所有命令
version 查看adb的版本序號
logcat 列印日誌到螢幕
bugreport 列印dumpsys,dumpstate和logcat資料到螢幕
jdwp 查看指定的設施的可用的JDWP資訊.
forward forward <local> <remote>
參考這篇文章:http://blog.chinaunix.net/u1/38994/showart_1912868.html
get-serialno 查看adb執行個體的序號.
get-state 查看模擬器/設施的目前狀態.
ppp 通過use裝置運行PPP
wait-for-device 如果裝置不聯機就不讓執行。
轉自:http://droidke.com/2010/04/01/android-adb.html