MonkeyRunner通过TCP连接目标设备的过程及命令
MonkeyRunner通过TCP连接目标设备,前提要获得目标设备的root权限
1.通过USB线连接目标设备,然后执行abd -s 目标设备ID shell
2.检测abd监听端口是否已经设置,getprop service.adb.tcp.port,没有返回值,说明还没有设置
3.$su,获取root权限
4.设置adb监听端口:#setprop service.adb.tcp.port 5555
5.查看adb监听端口:#getprop service.adb.tcp.port,返回5555
6.关闭adbd进程,可以通过以下方式:
#ps | grep adbd 获取adbd的进程号,然后执行#kill -9 adbd进程号
关闭adbd进程后,android系统大约在30秒左右重新启动
7. 连接目标设备:adb connect 目标设备IP,返回connected to IP:5555
过程如下图
备注1:网上有些资料说第5步可以使用stop adbd来终止adbd,然后用start adbd来启动,经验证
root权限下,stop adbd确实能够终止adbd,但是无法执行start adbd。adbd终止后,再无法通过adb shell进入到目标设备,需要重启设备。
在shell权限下,可以执行stop adbd 和 start adbd 命令。但是即使在shell用户下设置了adb监听端口,adb connect 命令还是会失败的。
备注2:
使用usb和tcp连接目标设备各有利弊,usb线容易认为碰掉,而tcp一旦掉线,就必须重新执行 abd connect命令才能再次连接上。