ADB命令


1、ADB是什么?

ADB,即Android Debug Bridge,它是Android提供的一個通用的調試工具。借助這個工具可以很好的調試開發程序。它是客戶端/服務端架構的命令工具,主要分三個部分:

(1)adb客戶端:運行在我們的開發機器上

(2)adb 服務器:在開發機器后台運行的進程

(3)adb daemon(守護進程):一個以后台進程形式運行於模擬器或物理手機設備上的守護進程

2、安裝

adb.exe在安裝的android的sdk開發包platform-tools目錄下 (我的網盤/工作軟件和jia包/測試工具/穩定性測試)

安裝好后,將其添加到path環境變量中,就是adb的位置路徑,然后在命令控制台輸入“adb help”,如果出現adb的版本和幫助信息,則表示可以成功執行了。

3、為了使用adb控制,調試的android設備,用戶需要使用USB數據線將PC和android手機設備連接到一起,然后手機設備的USB的調式模式需要開啟。

4、ADB常用命令 

* daemon not running; starting now at tcp:5037
* daemon started successfully

adb啟動時會自動開啟一個服務端進程,當服務端開啟后,他會綁定本地的tcp端口5037,並且通過5037端口監聽所有客戶端發過來的命令。顯示如上

1)adb devices
  通過該指令了解目前連接設備/模擬器的狀態的相關信息
  狀態信息包含以下3中不同的狀態:
  a、device狀態:這個狀態表示設備或模擬器已經連接到adb服務器上
  b、offline狀態:設備或模擬器沒有連接到adb服務器上
  c、no device狀態:表示沒有物理設備或模擬器鏈接
2)adb install
  通過該指令是把測試的手機應用軟件安裝到連接的手機設備中
  也可以使用adb -s武力手機設備序列號/手機模擬設備序列號 install 安裝包路徑
   如:adb -s 8ebcdcb9 install C:\Users\yunl....
  說明:
  a、重新安裝需要將原先已安裝的卸載
  b、如果不想卸載而是覆蓋,就需要在安裝路徑前加 -r 參數
   c、如果同時連接了模擬器和手機設備,直接使用adb install就會報錯
3)adb uninstall
   卸載已安裝的應用, adb -s物理手機設備序列號/手機模擬器設備序列號 shell pm uninstall -k 已安裝的應用包名
4)adb pull
  將手機上的文件傳送到我們的電腦上,如adb pull /sdcard/error_fs.dat d:/
  adb push 電腦上文件發送到手機設備上
5)獲取手機系統版本信息:adb shell getprop ro.build.version.release
6)獲取手機Android系統各個分區的相關信息:adb shell df
7)獲取設備序列號:adb get-serialno
8)獲取模擬器/設備當前狀態:adb get-state
9)查看和跟蹤系統日志:adb logcat
  如果有多台,那么需要指定某一個設備執行 adb –s 設備ID logcat
  保存日志:adb –s 設備ID logcat 跟路徑,如:>Desktop\log.txt
10)啟動adb服務 adb start-server
11)關閉adb服務 adb kill-server
12)將本機的端口重定向到手機設備或模擬器端口上 adb forward tcp: 2211 tcp:5566
13)查找安裝的包名:adb shell pm list package
   過濾查詢 adb shell pm list package | grep "android"
5、adb devices我常遇到的問題
  adb devices 通過該指令了解目前連接設備/模擬器的狀態的相關信息
  但經常碰到的問題就是輸入該命令,提示List   of  devices  attached
  解決如下:
  首先必須關閉所有關於360的相關進程,先執行 adb  start-server  啟動adb服務  adb  kill-server,如果還不行可能是需要將設備id加入到adb_usb.ini中
  在計算機 設備管理器中---便攜設備:必須使用USB連接
 注意取的是設備管理器中的硬件ID(便攜設備)
6、shell環境
Android本身就是一個linux環境,他有一個顯著的特性就是命令行界面或者shell;shell環境使得用戶能與操作系統的核心功能進行交互。
下圖是shell扮演的角色:
  
他就像是一個殼,作用於用戶和操作系統(kernel)中間,負責將命令解析成操作系統可理解的低級語言,同時將操作系統的響應信息轉換成用戶可以理解的形式顯示。
adb -d shell:直接進入當前usb連接的設備的shell環境
adb -e shell:直接進入當前模擬器設備的shell環境

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM