● 前言
利用工作之余的時間將Android測試相關知識進行一個整理,一來鞏固一下自己學到的東西;二來
可以讓想學習Android測試的同學多一份學習資料。
● 何為ADB
什么是ADB呢?為什么手機和電腦之間用usb連接后,就可以電腦上通過應用寶或者豌豆莢等手機助
手軟件對手機進行操作?
答案就是:因為這些都依賴于ADB。ADB就是連接手機和電腦通信的橋梁,只要這個橋梁建立起了,
那么你就可以通過電腦來控制你的手機了。
ADB全稱Android Debug Bridge,我把它解釋為“安卓調試的橋梁”,他是由三部分組成:
1、客戶端 client:運行在你的電腦上,你可以通過shell來調用起一個客戶端。其他Android
工具,例如ADT插件、DDMS都可以創建出一個客戶端
2、服務器 server:運行在你電腦的后臺,負責管理client和daemon進行通信。
3、守護進程 daemon:運行在模擬器或者Android設備的后臺。
但是它最終呈現給我們用的就是一個命令行的工具 ( command line tool ),通過它我們就可以
和模擬器或者是Android設備進行通信。它就在 <sdk>/platform-tools/ 這個目錄下:
每次啟動客戶端的時候,首先會檢查服務器是否已經在后臺運行了,如果沒有,他就會啟動server進程;
如果server是開啟的,server就會綁定在 TCP 的 5037 端口然后監聽客戶端發出來的命令;
所有的client都是通過 5037 端口和server進行通信的。
USB調試
當我們通過USB數據線來使用ADB的時候,通常需要將 "設置"-"開發者選項"-"USB調試" 這個框勾上。
需要注意的是:在有些 Android 4.2.2版本以上,是隱藏了“開發者選項”的,因此需要在 “設
置”-“關于手機”-“Android版本” 在這里連續點擊7次,然后“開發者選項”就出現了。
● ADB 命令
連上手機,配置好了環境變量(直接搜索“adb環境變量配置”會出一大堆)就可以使用命令了。下面列舉一下常用的命令
adb devices 查看當前連接設備
顯示當前連接的一個序號和狀態:
adb install <path_to_apk> 安裝apk文件
給的Apk的路徑是當前PC端文件所在的路徑:
adb -s <serialNumber> <command> 指定設備執行命令
serialNumber就是adb devices中的第一列的信息
adb pull <remote> <local> 將Android設備上的文件拉到本地
一般Android手機默認的存儲路徑是“/mnt/sdcard/”,我們把這里面的一個文件拉到C盤
然后我們去電腦的C盤下去看一眼:
通過Adb pull 命令復制出來的文件
adb push <local> <remote> 把本地文件復制到Android設備上
和 adb pull 剛好是一對相反的命令?! ?/p>
adb start-server 啟動adb的server
adb kill-server 關閉adb的server
有點時候adb在沒有響應的時候,我們需要重啟adb,不過這種情況一般較少。
adb shell [shellCommand] 運行shell命令
眾所周知,Android是基于linux內核的,因此可以在Android的系統上運行shell命令
通過adb shell 可以進入手機的系統,然后執行一些linux的命令
當然也可以不進入系統,直接使用命令
例如adb shell下安裝和卸載命令是:
pm uninstall com.tencent.qq
pm install -r "/data/local/tmp/com.tencent.qq"
本文為個人使用的認知,知識點可能會有些偏差,希望大家能批評指正。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。