Android系統調試工具——ADB
Android Debug Bridge是個多功能的工具,可以管理設備上的執行狀況。
即ADB是管理模擬器的一個工具。
包括下列三個部分:
客戶端程序(Client):在開發環境上運行,也可以通過命令行模式shell接口執行adb命令來操作客戶端程序。其他Android工具如開發工具ADT或調試監控系統DDMS都可以創建一個adb客戶端。
服務器程序(Server):在開發環境的后台運行,服務器程序負責管理介於客戶端程序和守護進程程序的通信溝通。
守護進程程序(Daemon):在實際硬件設備或虛擬設備的后台運行。
adb命令位於安裝路徑下的platform-tools路徑中,把這個路徑加在環境變量PATH中就可以在其他目錄下使用adb命令。
adb命令的標准格式
adb [-d|-e|-s <serialNumber>] <command>
這是adb命令的標准格式,當你正在執行的仿真器有多個時,要加上仿真器序號來區別:
使用“-s <serialNumber>”選項參數;
使用“-d”選項參數,adb命令只會送到連接USB的實際硬設備;
使用“-e”選項參數,adb命令只會送到Android仿真器。
后面<command>是必要的命令。
安裝與卸載應用程序apk文件
安裝:
adb [-s <serialNumber>] install <path_to_apk>
范例:安裝helloWorld.apk到Android仿真器序列號是5556的虛擬設備上:
adb –s emulator-5556 install helloWorld.apk
adb install helloWorld.apk
使用adb install安裝apk組件程序時,安裝在Android仿真器上的apk組件會被放在Android系統目錄的/data/app下,這個目錄下的應用程序文件名就是寫程序時設置的Package name
卸載:
adb [-s <serialNumber>] uninstall <package>
范例:
adb –s emulator-5556 uninstall com.example.android.helloWorld.apk
adb uninstall com.example.android.helloWorld.apk
注意安裝是接apk文件路徑名稱,而移除是接package名稱。
手動刪除:
adb shell
cd data/app
rm app.apk
Android操作系統命令行模式,使用shell命令
執行
adb shell
可以進入Android操作系統命令行模式,如此一來你就可以管理和查詢Android操作系統的目錄和執行相關的命令。
因為Android操作系統是Linux操作系統的一種,所以shell命令和Linux操作系統是相同的,例如ls命令顯示文件目錄,cd命令更改文件目錄,mkdir命令創建目錄,rmdir命令刪除目錄,rm命令刪除文件,mv命令移動文件。
進入Android操作系統命令行模式后,要離開回到控制台窗口,可以使用exit命令。
上傳文件到/sdcard或自/sdcard下載文件(復制文件)
上傳,即從系統復制文件到設備:
adb push <local> <remote>
如:adb push d:\test.txt /sdcard/
下載,即從設備復制文件到系統:
adb pull <remote> <local>
如:adb pull /sdcard/test.txt d:/
發布端口
可以設置任意的端口號,作為主機向模擬器或設備的請求端口。如:
adb forward tcp:5555 tcp:8000
搜索/等待模擬器、設備實例
取得當前運行的模擬器,設備的實例列表及每個實例的狀態|等待正在運行的設備。
adb devices
adb wait-for-device
查看Bug報告
adb bugreport
記錄無線通訊日志
adb shell
logcat –b radio
獲取設備ID和序列號
adb get-product
adb get-serialno
訪問數據庫SQLite3
adb shell
sqlite3