uiautomatorViewer无法获取Android8.0手机屏幕截图的解决方案
大家好,我是楊叔。每天進(jìn)步一點(diǎn)點(diǎn),關(guān)注我的微信公眾號(hào)【程序員楊叔】,獲取更多測(cè)試開發(fā)技術(shù)知識(shí)!
問題描述:
做APP UI自動(dòng)化的時(shí)候,會(huì)碰到用uiautomatorViewer在Android 8.0及以上版本的手機(jī)上,無法獲取到手機(jī)屏幕截圖,無法獲取元素定位信息的問題,會(huì)有以下的報(bào)錯(cuò):
在低版本的Android手機(jī)上,則沒有這個(gè)問題,可以順利截圖,但是現(xiàn)在手機(jī)的版本通常都不會(huì)低于Android8.0。
問題原因:
uiautomatorViewer暫不支持Android 8.0版本,試驗(yàn)使用Android7.0的版本的手機(jī),是可以正常獲取截圖的。
解決方法:
用adb 命令手動(dòng)抓取uix布局文件和截圖,然后再用uiautomatorViewer來加載。步驟如下:
1、Windows CMD下執(zhí)行命令生成app.uix文件:
adb shell uiautomator dump /sdcard/app.uix再用下面這個(gè)命令將抓取到的app.uix移動(dòng)到你自己想放置的文件夾下。
比如我的文件夾是(D:/uiautomatorPicture):
2、執(zhí)行下面這個(gè)命令生成app.png文件:
adb shell screencap -p /sdcard/app.png再用下面這個(gè)命令將抓取到的app.png移動(dòng)到你自己想放置的文件夾下:
adb pull /sdcard/app.png D:/uiautomatorPicture/app.png3、再打開uiautomatorViewer, 加載uix和png即可:
可以將上面的語句寫在了一個(gè)bat文件里面,可以直接雙擊運(yùn)行這個(gè)bat文件就把uix和png抓取了。然后再用uiautomatorViewer, 加載uix和png即可:
adb shell uiautomator dump /sdcard/app.uix adb pull /sdcard/app.uix D:/uiautomatorPicture/app.uix adb shell screencap -p /sdcard/app.png adb pull /sdcard/app.png D:/uiautomatorPicture/app.png備注: 可能會(huì)存在個(gè)別頁面即使抓取了uix和png, 用uiautomatorViewer加載也顯示不出來的情況,碰到這種情況,就只能用低版本的andorid手機(jī)了,沒辦法。
=========================================================
都看到這里了,如果對(duì)你有幫助,麻煩點(diǎn)個(gè)贊+收藏+分享,一鍵三連啦~
歡迎關(guān)注我的微信公眾號(hào)【程序員楊叔】:測(cè)開一枚,持續(xù)分享全棧測(cè)試知識(shí)干貨。標(biāo)簽:自動(dòng)化測(cè)試、性能測(cè)試、Java、Python、DevOps、CI/CD、小程序測(cè)試、測(cè)試工具、測(cè)試開發(fā)、測(cè)試框架/平臺(tái)、測(cè)試管理…
總結(jié)
以上是生活随笔為你收集整理的uiautomatorViewer无法获取Android8.0手机屏幕截图的解决方案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在微信如何备份、导出自己和朋友的聊天记录
- 下一篇: android 天时分倒计时,Andro