Appium UI Automator 获取手机屏幕内容时报错

布鲁斯 · 2018年10月18日 · 最后由 Viking Den 回复于 2018年10月19日 · 1829 次阅读

刚开始研究 Appium ,环境也搭建正常。但在用 Android-sdk 的 uiautomatorviewer 获取手机屏幕信息时报错(错误信息见附件图),但可以获取到别的手机的屏幕内容,按网上 baidu 的方法也未解决。请大家帮忙看看,分析可能原因。 谢谢

共收到 2 条回复 时间 点赞

出现这个的原因可能很多,比如有些界面禁止截屏,或者说动态界面。建议在执行时抓取下手机的 log 看下是否有相应的 log 输出。
分析下电脑端的代码流程,这个报错是出现在UiAutomatorHelper.java中的 166 行,

调用了IDevice的实现类Device中的 getScreenshot() 方法,

而其又调用了AdbHelper.java中的 getFrameBuffer() 方法。


而 AdbHelper.java 中的 getFrameBuffer() 处理方式就是通过与手机端的 adb server 建立 socket 连接,读取流信息。单独从这边看不出啥问题来,所以应结合手机端 adb server 是否有对应的 log 输出再分析具体产生的原因。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册