adb命令使用

 

1、查看连接的设备

adb devices

 

2、多个设备下选择一个设备进入shell模式(shell模式下,linux的命令都可以用)

adb -s 设备名 shell

adb -s 192.168.1.2:8888 shell

 

3、设置tcpid端口号

adb tcpip 8888

 

4、连接设备

(1)安卓设备和电脑在同一个wifi下时,通过ip地址连接

adb connect 192.168.1.2:8888

(2)通过数据线usb调试连接

 

5、退出shell模式

exit

 

6、安装应用

adb install /Users/yourname/Downloads/abc_Simulation.apk

连接了多个设备给某个设备安装应用时

adb -s 192.168.1.2:8888 install /Users/yourname/Downloads/abc_Simulation.apk

 

7、查看设备上的安装应用

adb (-s 192.168.1.2:8888) shell pm list package

(这条命令,实际是先adb shell进入安卓系统,然后在安卓系统下执行pm命令,pm命令在/system/下,pm命令的执行文件在/system/framework下)

 

8、查看设备上安装的第三方应用

adb shell pm list package -3

 

9、卸载应用

adb uninstall com.quark.browser

 

10、给设备传送文件

adb push 文件路径 文件要存的位置

adb push /Users/yourname/Desktop/charles-ssl-proxying-certificate.pem sdcard(把桌面上的pem文件传送到设备上的sd卡里)

 

11、把设备里的文件下载到本地

adb pull 文件路径 文件要存的位置

adb pull /system/framework/pm.jar Desktop

 

12、获取应用的activity(需要打开设备要获取activity的页面)

 (1)adb shell dumpsys activity| findstr "mFocuse"    (在win电脑系统下)

  adb shell dumpsys activity|grep "mFocuse" (在mac电脑系统下)

  dumpsys activity|grep "mFocuse"    (在设备的系统下)

 

 (2)在sdk中使用aapt工具来进行apk包的解析

使用cmd进入aapt.exe所在的文件夹,win里位置在android sdk的 build-tools里

mac电脑的build-tools位置

如果在电脑的环境变量里配置了aapt的路径,那可以不打开aapt的文件夹,直接直接aapt命令就行。

 

aapt dump badging apk包的路径名    (apk包在电脑上的路径名)执行完有很多,可以先执行下

aapt dump badging apk包的路径名 |findstr "launchable"     (这个命令执行后,找到的是apk的启动activity)

 

 (3)adb shell monkey -p 被测报名 -v -v -v 1.     (有三个-v,还有一个数字1)(执行后会有很多log,找前面是+号的using开头的,就是这个包的启动activity)

adb shell monkey -p com.testing.shop -v -v -v 1

 

13、启动应用

adb shell am start -W -S 包名/启动页面名。   (-w -s 先关掉打开的应用,等待一段时间后,重新启动,不加也影响不大)

adb shell am start com.testing.shop/com.uzmap.pkg.LauncherUI

 

14、互动型命令,input

(1)在方标的位置输入内容

adb shell input text 12345    (貌似需要光标在输入框,这个命令才会生效,不然没反应)   

 

(2)点击操作

使用过程中,把设备的坐标信息调出来:开发者选项中,指针位置选项打开。

adb shell input tab X坐标 Y坐标

adb shell input tap 704 438

 

(3)调用安卓系统中的一些系统按键

adb shell input keyevent keycode编码

keycode编码不用记,网上搜android keycode就行

如,点击home键,home键的keycode是3,删除键是67

adb shell input keyevent 3

 

(4)滑动操作

adb shell input swipe 起点的X坐标 Y坐标 终点的X坐标 Y坐标 操作时长   (操作时长是按照ms算的)

adb shell input swipe 390 880 380 1400 2000

 

(5)长按操作,可以使用滑动操作,短距离长时间滑动实现长按操作

adb shell input swipe 390 880 390 884 2000

 

15、adb完成自动化操作

(1)获取包名

  adb shell pm list package -3 | findstr "qq"

(2)根据包名获取启动页面

  adb shell monkey -p 被测包名 -v -v -v 1

(3)根据获取到的启动页面,启动应用

  adb shell am start -W -S 被测包名/启动页面

(4)将要执行的input命令写成一个bat脚本(win电脑是bat脚本,mac是sh脚本)

(5)执行bat脚本(执行sh脚本)

 

写bat脚本,新建一个txt文件,输入下面的内容,然后把注释的#号键都改成rem,bat文件中rem开头的行,不会被执行

其中的ping 127.0.0.1 -n 3,表示ping3次本地,ping1次是等待1秒,ping3次是等待3秒,需要加等待,不加的话,可能页面还没反应过来,

已经开始执行下一个命令了。最后保存内容,把txt文件的后缀改成bat,然后直接右键执行文件就行。

 

bat脚本(bat脚本把下面的#号替换成rem,sh脚本的话,不需要做改动):

#启动应用

adb shell am start -W -S com.tencent.mobileqq/.activity.SplashActivity

#等待

ping 127.0.0.1 -n 3

#点击用户名输入框

adb shell input tap 471 425

#点击用户名输入框的删除图标

adb shell input tap 704 437

ping 127.0.0.1 -n 1

#输入用户名

adb shell input text 27981234

ping 127.0.0.1 -n 1

#输入密码

adb shell input tap 446 572

ping 127.0.0.1 -n 1

adb shell input text 123456

#点击登录按钮

ping 127.0.0.1 -n 1

adb shell input tap 446 812

 

win电脑执行bat脚本,应该是直接双击执行或者右键执行或者是打开cmd,把脚本拖动到cmd中就可以。

mac电脑执行sh脚本,打开终端,把sh文件拖到终端里,然后回车执行,发现会提示permission denied,需要先在终端执行

chomd +x sh脚本的路径,执行完后,再把sh文件拖到终端里回车,就可以执行了(我的脚本名称是requirements 2.sh,脚本里只写一句启动应用的命令)。

 

16、查看设备资源占用

adb shell top

 

posted @ 2024-09-02 15:44  comeoncode  阅读(8)  评论(0编辑  收藏  举报