adb命令與adb shell命令的區(qū)別?
adb命令是PC端adb程序自帶的命令
adb shell 命令是調(diào)用Android系統(tǒng)的命令,放在安卓設(shè)備的System/bin目錄下,是手機(jī)端的命令
一. adb命令
1. 1設(shè)置手機(jī)的端口
手機(jī)端安裝終端模擬器Termux,輸入以下命令設(shè)置手機(jī)的端口,或者PC端安裝adb后,執(zhí)行adb shell執(zhí)行以下命令設(shè)置
su
setprop service.adb.tcp.port 5555
stop adbd
start adbd
1.2. PC端安裝并配置adb
1.官網(wǎng)下載platform-tools后解壓到特定目錄下
2.環(huán)境變量配置

1.3. PC連接手機(jī)
1.手機(jī)與PC連接同一wifi
2.手機(jī)端--關(guān)于手機(jī)--狀態(tài)消息--查看ip
3.PC端輸入以下cmd命令
adb connect ip:5555
1.4. 獲取設(shè)備連接狀態(tài)
adb get-state
device:設(shè)備正常連接
offline:連接出現(xiàn)異常,設(shè)備無響應(yīng)
unknown:沒有連接設(shè)備
1.4. 查詢?cè)O(shè)備號(hào)
adb devices
1.5. 重啟adb server
adb kill-server
adb start-server
1.6. 打印Android系統(tǒng)日志到PC端
adb logcat >D:/log.log
1.7. 復(fù)制手機(jī)文件到D盤123目錄
adb pull sdcard/test.txt D:\123
1.8. 推送PC文件到手機(jī)
adb push D:\123\test.txt sdcard
二. adb shell命令
adb shell命令主要整理以下幾個(gè):
1)pm命令
2)am命令
3)input命令
4)screencap命令
5)setprop&getprop命令
2.1.pm命令(package manager)
2.1.1. 列出所有應(yīng)用的包名
adb shell pm list package
2.1.2. 列出所有系統(tǒng)應(yīng)用的包名
adb shekk pm list package -s
2.1.3. 列出所有第三方應(yīng)用的報(bào)名
adb shell pm list package -3
2.1.4. 列出應(yīng)用的報(bào)名及安裝來源
adb shell pm list package -f
2.1.5. 通過關(guān)鍵字過濾出應(yīng)用的報(bào)名
adb shell pm list package -i zhihu
2.1.6. 組合使用
列出關(guān)鍵字為知乎的所有第三方應(yīng)用的報(bào)名和安裝來源
adb shell pm list package -3 -f -i zhihu
2.1.7. 列出包名對(duì)應(yīng)的apk位置
adb shell pm path com.zhihu.android
2.1.8. 列出應(yīng)用的詳細(xì)信息
adb shell pm dump com.zhihu.android
2.1.9.安裝應(yīng)用-目標(biāo)apk存放在PC
adb install xxx.apk
2.1.10.安裝應(yīng)用-目標(biāo)apk存放在手機(jī)
adb shell pm install xxx.apk
2.1.11.卸載應(yīng)用-adb
adb uniinstall 包名
2.1.12.卸載應(yīng)用-adb shell
adb shell pm uninstall 包名
2.1.13. 清除應(yīng)用數(shù)據(jù)
adb shell pm clear 包名
2.1.14. 設(shè)置應(yīng)用安裝位置
adb shell pm set-install-location 0/1/2
0:默認(rèn)
1:內(nèi)存
2:sdcard
2.1.15. 獲取應(yīng)用安裝位置
adb shell pm get-install-location
2.2. am命令
2.2.1.如何獲取activity名
adb shell dumpsys package com.zhihu.android
通過Action: "android.intent.action.MAIN"查找對(duì)應(yīng)的antivity
MAIN.png
2.2.2. 啟動(dòng)應(yīng)用
adb shell am start -n com.zhihu.android/.app.ui.activity.LauncherActivity
2.2.3. 停止目標(biāo)應(yīng)用再啟動(dòng)
adb shell am start -s com.zhihu.android/.app.ui.activity.LauncherActivity
2.2.4. 等待應(yīng)用完成后再啟動(dòng)
adb shell am start -w com.zhihu.android/.app.ui.activity.LauncherActivity
2.2.5. 啟動(dòng)默認(rèn)瀏覽器并打開一個(gè)網(wǎng)頁
adb shell am start -a android.intent.action.VIEW -d http://baidu.com
2.2.6. 啟動(dòng)電話撥打10086
adb shell am start -a android.intent.action.CALL -d tel:10086
2.2.7. 啟動(dòng)監(jiān)控
啟動(dòng)后手機(jī)的操作都會(huì)記錄
adb shell am monitor
2.2.8. 結(jié)束應(yīng)用
adb shell am force-stop 包名
2.3. input命令
2.3.1. 發(fā)送文本內(nèi)容
adb shell input text 123456
2.3.2. 模擬按下HOME
adb shell input keyevent KEYCODE_HOME
2.3.3. 點(diǎn)擊屏幕上坐標(biāo)為(500,500)位置
adb shell input tap 500 500
2.3.4. 從右向左滑動(dòng)屏幕
adb shell input swipe 900 500 100 500
2.3.5. 長按動(dòng)作
在小的距離內(nèi),較長的持續(xù)時(shí)間滑動(dòng)就是長按
adb shell input swipe 500 500 501 501 2000
2.4.截屏
adb shell screencap -p /sdcard
2.5. 設(shè)置/獲取手機(jī)端口號(hào)
adb shell setprop service.adb.tcp.port 5555
adb shell getprop service.adb.tcp.port
