app不能截图是怎么回事(app不能截图怎么办)app不能截图是怎么回事(app不能截图怎么办)

关注健康
关注真实体验

app不能截图是怎么回事(app不能截图怎么办)

app不能截图是怎么回事(app不能截图怎么办)

大家好,我是杨叔。每天进步一点点,关注我的微信公众号【程序员杨叔】,获取更多测试开发技术知识!

问题描述:

做APP UI自动化的时候,会碰到用uiautomatorViewer在Android 8.0及以上版本的手机上,无法获取到手机屏幕截图,无法获取元素定位信息的问题,会有以下的报错:


在低版本的Android手机上,则没有这个问题,可以顺利截图,但是现在手机的版本通常都不会低于Android8.0。

问题原因:
uiautomatorViewer暂不支持Android 8.0版本,试验使用Android7.0的版本的手机,是可以正常获取截图的。

解决方法:

用adb 命令手动抓取uix布局文件和截图,然后再用uiautomatorViewer来加载。步骤如下:

1、Windows CMD下执行命令生成app.uix文件:

adb shell uiautomator dump /sdcard/app.uix

再用下面这个命令将抓取到的app.uix移动到你自己想放置的文件夹下。
比如我的文件夹是(D:/uiautomatorPicture):

adb pull /sdcard/app.uix D:/uiautomatorPicture/app.uix

2、执行下面这个命令生成app.png文件:

adb shell screencap -p /sdcard/app.png

再用下面这个命令将抓取到的app.png移动到你自己想放置的文件夹下:

adb pull /sdcard/app.png D:/uiautomatorPicture/app.png

3、再打开uiautomatorViewer, 加载uix和png即可:


可以将上面的语句写在了一个bat文件里面,可以直接双击运行这个bat文件就把uix和png抓取了。然后再用uiautomatorViewer, 加载uix和png即可:

adb shell uiautomator dump /sdcard/app.uixadb pull /sdcard/app.uix D:/uiautomatorPicture/app.uixadb shell screencap -p /sdcard/app.pngadb pull /sdcard/app.png D:/uiautomatorPicture/app.png

备注: 可能会存在个别页面即使抓取了uix和png, 用uiautomatorViewer加载也显示不出来的情况,碰到这种情况,就只能用低版本的andorid手机了,没办法。

==============================
都看到这里了,如果对你有帮助,麻烦点个赞+收藏+分享,一键三连啦~

欢迎关注我的微信公众号【程序员杨叔】:测开一枚,持续分享全栈测试知识干货。标签:自动化测试、性能测试、Java、Python、DevOps、CI/CD、小程序测试、测试工具、测试开发、测试框架/平台、测试管理…

未经允许不得转载: 九月健康网» app不能截图是怎么回事(app不能截图怎么办)
分享到: 更多 ( 0)