ADB全稱Android Debug Bridge ,“安卓調試橋梁”連接Android和電腦通信的橋梁。
市面上常見的手機助手,底層調研的都是ADB命令行。
C/S架構命令行工具,客戶端和服務端都在PC本地。
三部分:
1、客戶端,運行在PC機上client,可以通過它對Android的應用進行安裝卸載和調試。
2、 服務器,運行在PC機上server,負責管理client和手機端的通信。服務端用來接收客戶端的請求,並發送給手機端。
通信原理:
啟動ADBserver以后,在win系統中啟動了adb.exe進程,進程默認監聽5037端口。
客戶端通過這個端口接發送請求,被進程監聽到,發送給Android端adbd進程。adbd進程執行shell命令。講結果通過5037端口返回給server,server返回給客戶端。
3、手機端或者是模擬器。
1. 查看設備
adb devices 這個命令是查看當前連接的設備, 連接到計算機的android設備或者模擬器將會列出顯示
2.關閉adb
adb kill-server
3.開啟adb
adb start-server
adb reboot
4. 安裝軟件
adb install 這個命令將指定的apk文件安裝到設備上
adb install 路徑\app-weichi-release.apk
當有多個設備接入ADB客戶端,就要指定設備名稱
adb -s 設備名 install 包名
adb -s emulator-5556 install 路徑\helloWorld.apk
如果顯示success,那么久安裝apk包成功,顯示Failure,則安裝失敗。
檢查錯誤,排錯,再執行如下命令:abd install -r 包名.apk
5、獲取app的包名和activity名稱
adb logcat | findstr START
腳本中,cmp= 后面的值就是 包名/activity名稱
6. 卸載軟件
adb uninstall <軟件名>
adb uninstall -k <軟件名>
如果加 -k 參數,為卸載軟件但是保留配置和緩存文件.
#*************************APP啟動時間的監控*********************#
7、監控APP啟動時間
語法:adb shell am start -W packagename/activity
例子:adb shell am start -W com.android.calculator2/.Calculator
TotalTime的值,就是APP啟動所消耗的時間
8、關閉app
語法:adb shell am force-stop 包名
例子:adb shell am force-stop com.android.calculator2
9、把app從前台調入后台
語法:adb shell input keyevent 3
ps:app的啟動,分為冷啟動和熱啟動
冷啟動:app徹底停止運行后再啟動
熱啟動:app進入后台后再啟動
10. 從電腦上發送文件到設備(輸入命令adb remount ,意思是將設備改為可讀可寫)
adb push <本地路徑> <遠程路徑>
用push命令可以把本機電腦上的文件或者文件夾復制到設備(手機)
如:adb push recovery.img /sdcard/recovery.img,將本地目錄中的recovery.img文件傳送手機的SD卡中並取同樣的文件名.
adb push C:\recovery.img /sdcard/
11. 從設備上下載文件到電腦
adb pull <遠程路徑> <本地路徑>
如:adb pull /data/local/tmp/blacklist.txt D:test.txt 將/data/local/tmp/blacklist.txt拉取到 本地D:text.txt 命名為text.txt
用pull命令可以把設備(手機)上的文件或者文件夾復制到本機電腦
12. 登錄設備shell
adb shell
進入之后就可以執行shell命令了,比如cd ,pwd,ls等。
(如需轉載請標明出處,謝謝!)