UiAutomatorViewer无法获取手机截图进行元素定位的解决办法
问题一、描述
链接:https://pan.baidu.com/s/1X-eK5cf8vLBb1S2zPOSJwQ
提取码:91tn
本来想使用UIAutomatorView定位app页面元素的
最开始我使用的是夜神模拟器
打开UIAutomatorView连接模拟器没有问题,但是后来我使用真机时发现无法连接到真机获取真机的截图
具体报错信息如下
解决方法
1. 在任意盘的根目录(不是根目录也没问题)新键app.png 与app.uix 两个文件(我这里放在的E盘下面)
2. 打开CMD按照顺序执行下面的命令
adb shell uiautomator dump /sdcard/app.uix # 把当前窗口的UI布局信息输出到/sdcard/app.uix文件
adb pull /sdcard/app.uix E:/app.uix # 把手机里面的app.uix文件写到本地E盘的app.uix文件
adb shell screencap -p /sdcard/app.png # 截取当前的屏幕图片,并保存到/sdcard/app.png
adb pull /sdcard/app.png E:/app.png # 把上面的截图文件从手机中传递到电脑的E:/app.png中
3. 导入UIAutomatorViewer
启动UiautomatorViewer, 按照下图导入两个app文件
4.由于这种方法,每次切换手机的页面时都需要要重新执行上述命令,所以可以把命令写到一个bat脚本里面
@echo on
adb shell uiautomator dump /sdcard/app.uix
adb pull /sdcard/app.uix E:/app.uix
adb shell screencap -p /sdcard/app.png
adb pull /sdcard/app.png E:/app.png
5.导入后再次链接真机成功
6.接下来每次切换到目标页面都需要执行文件,具体步骤如下
1.手机停留目标页面
2.执行UI.bat 文件
3.打开软件,重新同步文件
4.点击OK后,则是目标页面
问题二、
检测页面元素软件和appium同时在用adb会报错如下
如何解决呢? 重启adb即可
adb kill-server 杀掉adb服务
adb start-server 重启adb服务
重启之后查看设备有没有连接成功