在使用ios模拟器时,如何使用calabash截取openGL的屏幕截图? 在过去我可以使用(localhost:37265 / screenshot2),但现在它已被弃用。
答案 0 :(得分:0)
<强>已更新强>
Calabash iOS 0.18.2及更高版本现在支持OpenGL截图。
以下信息已过期,但可能有用。
在this PR中不推荐使用screenshot2路由,以提供Xcode 5.1.1和64位支持。
这是我们使用此路线的第一份报告。
仅限iOS 7,我们有一些选择,但我还没有找到解决方案。正在跟踪in the calabash-ios issues和in this calabash-ios-server branch。请随意与您的意见相称。
另一方面,calabash.framework现在提供允许用户实现自己路由的头文件。提供详细信息超出了本问题的范围,但我们有一个用户使用头文件实现OpenGL屏幕截图的示例。
答案 1 :(得分:0)
由于您很可能使用UIViews来呈现OpenGL内容,因此您可以在UIView上创建一个类别,用于创建当前状态的屏幕截图(例如,通过将内容绘制到图像中)。您可以使用calabash的map方法调用该类别,例如
# the following assumes your OpenGL view has an accessibility label 'OpenGL view'
# you also have a category 'UIView+Calabash' with a method '-(void)takeScreenshot;'
map("UIView marked:'OpenGL view'", :takeScreenshot)
您可能还想阅读以下主题: Programmatically take a screenshot combining OpenGL and UIKit elements