一、问题原因:
因为有些操作系统上uiautomator2的agent无法自动拉起,所以需要手动通过adb命令拉起
二、解决流程
手机和电脑同时连接到同一个wifi上
1、开启远程adb
开启远端adb,这一步需要手机通过USB连接到电脑
#查看已连接设备
adb devices

#使用tcpip命令
adb tcpip 5555

#其中192.168.3.2是手机的局域网IP地址
adb connect 192.168.3.2:5555
#确认可以看到设备信息
adb devices

2、通过adb命令启动uiautomator2的agent
#输入adb shell,执行如下命令
chmod 755 /data/local/tmp/atx-agent
data/local/tmp/atx-agent version
data/local/tmp/atx-agent server -d

三、代码验证,得到需要的结果
import uiautomator2 as u2
#第一种方式:通过手机wifi进行连接,参数为ip
d1 = u2.connect_wifi("xx.xx.xx.xx")
print(d1.info)
#第二种方式:通过手机序列号连接
d = u2.connect_usb("xxxx")
print(d.info)
print(d.device_info) #可以获取详细的设备信息
#第三种方式:通过adb-wifi连接,也就是adb tcpip模式,注意不药丢掉端口号
d = u2.connect_adb_wifi("192.168.x.xx:5555")
print(d.info)
网友评论