这个问题是以下内容的扩展:从 iOS 应用程序截屏 - 模拟显示记录器(内部查询)
有 2 种方法,我遇到了从后台截屏 -
从 ios 表面创建图像并保存它- 它以非常快的速度捕获(大约 0.2-0.3 秒/ 12-15 个屏幕截图),但是遇到了一些问题,在这里讨论:释放 IOSurface
以下代码使用 createScreenIOSurface API 执行相同的工作:
IOSurfaceRef 表面 = [UIWindow createScreenIOSurface]; UIImage *surfaceImage = [[UIImage alloc] _initWithIOSurface:surfaceorientation:UIImageOrientationUp]; CFR 释放(表面);UIImageSaveToPhotosAlbum(surfaceImage, self, nil, nil);
但是,捕获率很差,大约 0.5-0.7 秒/屏幕截图。
那么,是否有解决方法 1 中面临的问题的方法?
有没有办法提高方法 2 的性能?