相机视图在iPhone上不起作用,在另一个上起作用

时间:2012-03-27 09:14:33

标签: iphone xcode opengl-es view camera

我制作了一款带有摄像头视图的iPhone应用程序作为主要功能。它通过OpenGL处理​​相机图像,所以我可以修改帧。 当我测试我的应用程序时,它工作正常(我在荷兰有一个iPhone 4s Ios 5.1),但是当我将它上传到appstore进行审核时,它被拒绝了。他们说相机视图不起作用,而且它们只是黑屏。 我真的不知道该怎么做,因为它适合我。我无法重现错误。

是否有人像我一样有同样的问题?或者知道该怎么做的人?

2 个答案:

答案 0 :(得分:3)

您没有说是否使用OpenGL ES 2.0来执行此操作,但如果您这样做,他们可能会在缺乏2.0支持的iPhone 3G上测试您的应用程序。您可以通过将opengles-2密钥添加到Info.plist中的UIRequiredDeviceCapabilities来过滤掉那些不受支持的设备。

第二种可能性是您试图从相机中显示超过测试仪设备的最大OpenGL ES纹理大小的图像。 You can check this size,但在早于iPad 2的设备上,此最大纹理尺寸为2048x2048。在iPad 2上,新的Retina iPad和iPhone 4S,纹理尺寸为4096x4096。 iPhone 4可以拍摄超过2048像素宽的图像,这可以解释为什么您的相机视图适用于iPhone 4S,但在较旧的硬件上显示黑色图像。

还有一种远程可能性,即您使用的是旧版硬件上不存在的OpenGL ES扩展,但我不认为A5芯片中最新添加的任何内容对图像处理有用。我认为较新的硬件还支持更多的纹理单元,属性和变化,但我需要检查它。

这就是为什么我总是尝试在应用程序中具有我所需的最低功能的最旧硬件上进行测试,因为不同设备GPU处理事物的方式存在细微差别。

答案 1 :(得分:0)

我没有包含框架,在iphone 4s上这没有必要,它是在iphone 4上...