Appium [已解决] appium 截图问题

宁如虎 · December 11, 2013 · Last by 南风 replied at September 01, 2016 · 1919 hits

运行环境: android 4.2
appium 采用 driver.get_screenshot_as_file("D:/tt.png") or driver.save_screenshot('d:/fda.png') 截图,无法保存下来,log 如下:

查看 log 发现,android 采用的截图方式是系统命令/screencap -p 然后采用 pull 传到本地电脑,截图可以正常截取下来,回传的时候,由于手机权限问题,data 目录权限不够(无查看权限),无法回传到本地,如采用 emulator,则正常,在不 root 手机的情况下,如何解决此类问题。

共收到 3 条回复 时间 点赞

4.2 的环境我还测试过, 你可以试试 adb root. 只要 adb 有 root 权限即可. 按理说 adb 都是工作在 root 权限下的.不然他也没权限做其他事情了

另外 data/local/tmp 这个目录的权限是所有人都可以访问的, 是个权限很开放的目录.. 如果不是, 你可以尝试修改下这个权限.

appium 之前也会往这个目录 copy 文件, 我觉得权限肯定是有的.

你最好分析下是不是这个原因 可以手工执行下对应的命令

shell@android:/data/local/tmp $ ls -l
ls -l
-rw-rw-rw- shell shell 13176970 2013-11-29 17:24 1cf38e8e4ba1393a6807a3dee
78a0af0.apk
-rw-rw-rw- shell shell 31819 2013-12-09 23:51 AppiumBootstrap.jar
drwxrwxrwx shell shell 2013-11-20 10:50 dalvik-cache
-rw-rw-rw- shell shell 569341 2013-11-07 17:09 microservice.jar
drwx------ shell shell 2013-10-10 15:58 screenshot.png
-rw-rw-rw- shell shell 48801 2013-12-11 10:09 strings.json
-rw------- shell shell 4959 2013-12-10 18:15 uidump.xml
查看目录权限,发现 screenshot.png 居然具有目录权限,强制删除后,再执行 appium 截图,一切正常。

#2 楼 @skytiger0419 设置了保存路径,怎么没有保存到指定路径

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up