UiAutomatorViewer无法获取手机截图进行元素定位的解决办法

问题一、描述

本来想使用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服务

重启之后查看设备有没有连接成功

原文地址:https://www.cnblogs.com/tiansc1/p/14918808.html