UIGetScreenImage现在会被拒绝吗?

时间:2012-04-01 06:20:34

标签: ios capture

我知道UIGetScreenImage是一个私有api,并且在一段时间内可以在appstore中使用。

后来有人说不能再使用了。

所以我在这里要求确认,可以在我的应用程序中使用并传递给Appstore吗?

最好的问候

3 个答案:

答案 0 :(得分:7)

看看这篇Apple技术说明。它展示了如何在UIKit中“合法地”做截图, 接受进入App Store:

http://developer.apple.com/library/ios/#qa/qa1703/_index.html#//apple_ref/doc/uid/DTS40010193

答案 1 :(得分:2)

他们长期以来一直拒绝它,因为iOS 4于2010年发布,当时他们引入了AVFoundation框架,该框架是UIGetScreenImage()以前主要使用的所有相机帧捕获的解决方案。

他们提供了两种选择,一种用于相机帧(Technical Q&A QA1702),另一种用于UIKit元素(Technical Q&A QA170 - 迈克尔提到的那种),但这些都不足以用于拍摄实际的屏幕截图

您可以在developer forums阅读公告(需要iOS Developer Program帐户)。

答案 2 :(得分:1)

大约一年前,Apple开始在App Store审核过程中对提交的二进制文件进行静态分析。在此之前,如果功能本身不太明显,无法被审核人员捕获,则访问私有API将通过审核。

目前,审阅者使用自动方法按名称识别私有API。我记得在某个地方读过,不仅不允许你打电话给他们,而且你也不能在Category方法名称中使用私有API名称。我想,因为扫描过程是自动化的,如果你使用了未记录的方法,你就不会有机会通过审查。