背景 最近在拿爱奇艺学习下 Robotium,调用 takeScreenshot()去截图,可是每次截取到的图片中视频播放器区域都是黑色的,正常情况下截图中的视频区域应该是有图象的,有大神遇到过这种问题吗
截图的部分代码
solo.sleep(1000); solo.takeScreenshot("qiyi"); solo.sleep(2000);
截取到的图片
视频截图就是这样的。
嗯对的。默认就是这样的
@lihuazhang @monkey 多谢!!另 截图只能这样了吗 ? 有没有好的解决办法没
screencap 可以截到视频,robotium 无法
@shixue33 多谢!! 看到有人说用 adb 去实现, 后续再试下
那只能这样了。
adb shell /system/bin/screencap -p /sdcard/%filename%.png adb pull /sdcard/%filename%.png E:/%filename%.png
#5 楼 @best1196 你不能用 adb 实现,因为你用的是 Robotium,Robotium 执行在手机的系统里,要在 Robotium 脚本里用 screencap 估计得手机 root,然后获取 root 权限后,java 写 RunTime.getRuntime().excute("screencap -p /sdcard/%filename%.png")。我没实践过,仅思路。
@shixue33 用 adb 去截图不太好用,得到的截图文件大小为 0,执行 screencap 命令后得到的输出流为空
#7 楼 @shixue33 我用的就是 java 写 RunTime.getRuntime().excute("screencap -p /sdcard/%filename%.png"), 不过手机必须要获取 root 权限,主要的问题就是 solo.takeScreenshot 是针对 activity 截图的,系统弹框无法获取