adb-Android debug bridge(安卓調試橋)

來源:互聯網
上載者:User

ADB全稱Android Debug Bridge, 是android sdk裡的一個工具, 用這個工具可以直接操作管理android模擬器或者真實的andriod裝置(如G1手機).

它的主要功能有:

運行裝置的shell(命令列)
管理模擬器或裝置的連接埠映射
電腦和裝置之間上傳/下載檔案
將本地apk軟體安裝至模擬器或android裝置

ADB是一個 用戶端-伺服器端 程式, 其中用戶端是你用來操作的電腦, 伺服器端是android裝置.

先說安裝方法, 電腦上需要安裝用戶端. 用戶端包含在sdk裡. 裝置上不需要安裝, 只需要在手機上開啟選項settings-applications-development-USB debugging.

對於Mac和Linux使用者, 下載好的sdk解壓後, 可以放~或者任意目錄. 然後修改~/.bash_profile檔案, 設定運行環境指向sdk的tools目錄.具體是開啟~/.bash_profile檔案(如果沒有此檔案也可以自行添加), 在裡面加入一行:

export PATH=${PATH}:<你的sdk目錄>/tools

例如: 

然後就可以使用adb命令了.

嫌安裝麻煩的同學其實也可以省去上面安裝步驟, 直接輸入完整路徑來使用命令。 

 現在說下ADB常用的幾個命令
1. 查看裝置

adb devices
這個命令是查看當前串連的裝置, 串連到電腦的android裝置或者模擬器將會列出顯示

2. 安裝軟體

adb install <apk檔案路徑>
這個命令將指定的apk檔案安裝到裝置上

adb -s可以指定模擬器序號,用來選擇操縱哪一個模擬器,例如adb -s emulator-5554 install email.apk,指定將email.apk安裝在模擬器emulator-5554。

3. 卸載軟體

adb uninstall <軟體名>
adb uninstall -k <軟體名>    注意使用包名,例如com.zhang.Android.HelloWorld

如果加 -k 參數,為卸載軟體但是保留配置和快取檔案.

你可以從開發環境上傳和安裝應用程式 apk套件到實際硬裝置或 Android模擬器上,執行上面“adb install”命令,後面接 apk檔案路徑名稱。 執行上面“adb uninstall”命令,後面接 package名稱,可以移除應用程式 apk套件。注意安裝是接 apk檔案路徑名稱(adb install helloWorld.apk),而移除是接 package名稱(adb uninstall com.example.android.helloWorld)。詳細 package名稱可以從 Android作業系統的“/data/data”目錄或“ /data/app”目錄(要先用“ adb shell”命令進入 Android作業系統)

 

4. 登入裝置shell

adb shell
adb shell <command命令>
這個命令將登入裝置的shell.進入 Android作業系統命令列模式後,要離開回到控制台視窗,你可以使用 CTRL+D或 “exit”命令。

後面加<command命令>將是直接運行裝置命令, 相當於執行遠程命令

5. 在裝置與電腦之間進行檔案傳送

adb push <本地路徑> <遠程路徑>   用push命令可以把本機電腦上的檔案或者檔案夾複製到裝置(手機) 

adb pull <遠程路徑> <本地路徑>      用pull命令可以把裝置(手機)上的檔案或者檔案夾複製到本機電腦

“adb push”命令可以上傳檔案到 SD儲存卡目錄“/sdcard”,因為 Android作業系統會保護系統檔案,其他目錄會有存取的許可權,是無法自由寫入的,所以一般使用者檔案或照片檔案都放在“/sdcard”目錄內。“adb pull”命令是相反方向操作,將檔案自 Android作業系統的“/sdcard”目錄下載到個人電腦上。另外一種常用的做法是從“/data/data”目錄或“ /data/app”目錄將應用程式 apk套件抽出來,提供開發好的應用程式給其他人使用。

6. 顯示協助資訊

adb help
這個命令將顯示協助資訊

7.

$ adb logcat                            (監控模擬器運作記錄)
adb logcat會即時監控Android模擬器運行時所產生的記錄,此項功能對於程式開發人員用來除錯協助很大,開發人員可以從屬記錄中得到應用程式運行時發生的錯誤訊息。運行adb logcat後,若要離開監控模式,可以按Ctrl+C。

8.

$ adb bugreport                     (產生adb除錯報告)
開發人員若要進一步得知系統產生的所有錯誤訊息報告,可以運行adb bugreport指令來實現,該指令會將Android系統的dumpsys、dumpstate與logcat資訊都顯示出來。

9.
$ adb get-state                     (獲得adb伺服器運作狀態) adb get-state會顯示adb伺服器的運作狀態為何,共有offline (離線)、bootloader (開機中)、與device (運作中) 三種狀態。

10.
$ adb start-server                      (啟動adb伺服器)  $ adb kill-server                       (關掉adb伺服器) 通常啟動Android伺服器時,就會啟動adb伺服器了。可以使用adb get-

state來查知adb的狀態。如果沒有啟動可以運行adb start-server啟動它,若不想進行除錯監控,可以運行adb kill-server關掉它 

  adb指令參數表

用    途 指    令 功 能 描 述
 
參數
 adb -d
 當Android手機用USB串連電腦時,

可通過adb -d對該裝置下命令
 
adb -e
 對正在啟動並執行模擬器下指令
 
adb -s
 指定模擬器序號
 
一般用途
 adb devices
 顯示當前啟動的模擬器裝置序號
 
adb help
 顯示adb指令用法
 
adb version
 顯示adb版本
 
資訊處理
 adb install
 安裝APK應用程式組件
 
adb push
 上傳檔案或目錄
 
adb pull
 下載檔案或目錄
 
指令列
 adb shell
 進入Android系統命令列模式
 
除錯
 adb logcat
 監控模擬器運作記錄
 
adb bugreport
 產生adb除錯報告
 
伺服器
 adb start-server
 啟動adb伺服器
 
adb kill-server
 關閉adb伺服器
 
adb get-state
 取得adb伺服器運作狀態
 
adb get-serialno
 獲得模擬器運行序號
 
網路
 adb forward tcp:port
 更改模擬器的網路TCP通訊連接埠

adb install -s xxx.apk   安裝程式至sd卡

adb install -r xxx.apk  重新安裝程式

adb uninstall -k xxx.apk 儲存資料和緩衝路徑

運行eclipse出現如下錯誤

emulator: ERROR: Could not create temporary hardware.ini: Permission denied

解決方案:先運行模擬器,emulator,再在eclipse下運行程式,選擇相應的模擬器或裝置即可。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.