adb(Android Debug Bridge)是Android 提供的一個通用的調試工具。藉助這個工具,可以管理裝置模擬器的狀態 ,還可以進行以下的操作:
1、快速更新裝置或手機模擬器中的代碼,如應用或Android系統升級;
2、在裝置上運行shell命令;
3、管理裝置或手機模擬器上的預定連接埠;
4、在裝置或手機模擬器上上傳下載檔案
adb的工作方式比較特殊採用監聽Socket TCP 5554等連接埠的方式讓IDE和Qemu通訊,預設情況下adb會daemon相關的網路連接埠,所以當我們運行Eclipse時adb進程就會自動運行。 ADB是一個 用戶端-伺服器端 程式, 其中用戶端是你用來操作的電腦, 伺服器端是android裝置.
Android的linux shell做了大量精簡,很多linux常用指令都不支援
1.adb shell
通過上面的命令,就可以進入裝置或模擬器的shell環境中,在這個Linux Shell中,你可以執行各種Linux 的命令,如果只想執行一條命令,可以輸入adb shell cmd
eg:adb shell dmesg會列印出核心的調試資訊
adb shell logcat v會列印出log資訊
adb shell ls列出裝置的目錄列表
2.上傳檔案: adb push <PC檔案> </tmp/...>
下載檔案: adb pull </tmp/...> <PC檔案>
/tmp/...指的是在裝置linux環境中要操作檔案的路徑
eg: adb push key data/app 就是將key檔案上傳到使用者目錄中
3.安裝程式: adb install <*.apk>
卸載軟體: adb unistall apk(注意卸載的時候和安裝的時候的檔案名稱是不一樣的,例如安裝的時候adb shell GPSStatus2b2.apk,這個apk檔案就被安裝在data/app目錄下,但是使用uninstall的時候,首先要到、data/app目錄下查看安裝的apk檔案在linux目錄下的檔案名稱,發現是com.eclipsim.gpsstatus.apk,使用adb uninstall com.eclipsim.gpsstatus.注意不要加apk尾碼。返回success結果證明檔案卸載成功)。
補充一點,通過adb安裝的軟體(*.apk)都在"/data/app/"目錄下,所以安裝時不必制定路徑。
卸載的時候當然也可以直接到目錄下使用rm命令也可。
4.顯示android模擬器狀態:
adb devices 列出所有串連的裝置
adb get-serialno 列印裝置序號
adb version 列出ADB的版本號碼
adb get-state 列印出的結果一般是offline | bootloader | device
5.等待正在啟動並執行裝置: adb wait-for-device
6.adb start-server
adb kill-server 一般在鍵入adb shell命令後顯示device offline或者是顯示有多個裝置的情況下使用
7.adb remount 重新掛載系統磁碟分割,就是將系統磁碟分割重新掛載為可寫。
8. adb root使用管理員權限
9. adb bugreport列印出所有的bug資訊
10.adb shell logcat -b radio 記錄無線通訊日誌: 一般來說,無線通訊的日誌非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設定記錄:
11.adb emu
12.連接埠轉寄: adb forward adb forward tcp:5555 tcp:1234
(將預設連接埠TCP 5555轉寄到1234連接埠上)
在開發中對這些指令能熟練應用對開發還是很有好處的。
本部落格轉載自CSDN網友http://blog.csdn.net/zeng622peng/archive/2011/05/07/6401452.aspx,在此感謝.