iPhone应用只支持Retina屏幕,苹果会接受这个应用吗?

3
我刚将一个iPad应用程序移植到iPhone上,由于图形和编程原因,它不能在低分辨率显示屏(3G和3GS)上运行。应用程序可以在低分辨率设备上启动,但图形会出现混乱。
如果说明明确指出仅适用于iPhone 4和iPod Touch 4g,那么是否可以提交这样的应用程序?

出于好奇:什么原因? - hanno
1
坐标。将图形应用程序从iPad移植到iPhone4非常简单,因为它们的显示屏大小相似。移植到低分辨率显示屏更加困难(因为需要缩放所有内容)。我宁愿把那些时间花在其他应用上。 - Karlth
问“苹果会接受这个应用程序吗?”是毫无意义的,因为我们这里没有人能够为苹果背书。 - glorifiedHacker
4
我不是要求得到由乔布斯的私人秘书签署的保证协议,而是想听取其他开发者的意见。这些开发者可能因为同样的原因被拒绝了他们的应用程序。请注意,我的意思不是要得到解释,只需要翻译内容即可。 - Karlth
出于好奇,即使您的应用程序不使用前置摄像头,使用'UIRequiredDeviceCapabilities'后您的应用程序是否被接受? - sooper
是的。至少目前是这样。 - Karlth
5个回答

7

虽然您不能按型号限制,但可以要求应用程序具有某些硬件设备功能。这些功能在应用程序的plist文件中使用“UIRequiredDeviceCapabilities”键指定。

例如,如果您说您的应用程序需要前置摄像头,那么它将限制为具有该功能的设备,从而消除了3G和3GS。


谢谢。我将使用前置摄像头要求。 - Karlth

1

是的,这是可能的。您需要通过硬件进行限制。例如,iPhone 4是唯一具有前置摄像头的手机。因此,您需要启用它。

查看Info.plist和UIRequiredDeviceCapabilities

UIRequiredDeviceCapabilities

<key>UIRequiredDeviceCapabilities</key>
<array>
 <string>telephony</string>
 <string>gps</string>
  <string>location-services</string>
</array>

由于没有电话功能和可能没有GPS,它将防止在iPad和iPod Touch上运行,原因相同。

您还需要添加限制前置摄像头的限制,以防止较旧的iPhone硬件。


1

您需要确保在 Info.plist 文件中适当地指定了支持的设备 (UIRequiredDeviceCapabilities)。这样做后,应用程序将不会因此被拒绝。


很遗憾,Retina不是可以设置的要求。 - Karlth
1
@user:你可以作弊并要求使用相机。这仅适用于iPhone/iPod Touch 4及更高版本。 - PengOne

0

他们应该这样做。清晰地记录需求。还有其他硬件差异,应用程序也会利用它们,所以这不是仅限于视网膜显示的问题。

例如,一个以拍摄视频为中心的应用程序也会受到其可以使用的硬件的限制。


0

视网膜显示屏比普通 iPhone 多出 4 倍像素,但屏幕尺寸保持不变。因此,如果你天真地将 iPad 应用程序移植到 iPhone 上,它将无法使用,因为所有元素都比 iPad 上的要小得多。视网膜只能使它们更加清晰,但不能使它们变大。不要被 iPhone 模拟器所欺骗。在 Mac 屏幕上以 100% 的比例运行视网膜模式与真实设备相比根本不可同日而语。


我已经开发并发布了多个iPad和iPhone应用程序,因此我知道模拟器和实际设备之间的差异。实际问题是当从iPad移动到低分辨率的iPhone时,必须更改坐标。当移植到iPhone时,如果避免将图像放置在边界附近,则可以保持坐标不变。由于Retina分辨率,图形不必缩放或重新绘制,因为屏幕足够清晰。 - Karlth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接