我刚刚完成了在iPhone5 / 5S(1136 * 640)上开发和测试的SpriteKit游戏,游戏在两台设备上以60fps运行。我还写了一个支持iPhone4 / 4S(960 * 640)的版本,因为我在较慢的iPhone 4上进行了测试,但这个版本在20fps时遇到困难,即使我正在预加载所有资产,也可能在初始加载时滞后/跳跃。 / p>
我目前的理解是我需要提交两个版本,但可以在说明中指定“此应用程序需要iPhone 5或更高版本”。
我的问题是:我可以将应用程序限制在iPhone5 / 5S,我当时认为可能有 [必需的设备功能] ,例如“Requires_Advanced_Processor”或我可以设置的内容。在没有完全缩减版本的情况下,游戏能够在较旧的硬件上提供良好的体验,我只是意识到发布iPhone 4 / 4S版本可能会诱使一些人下载它并且有一个不太理想的体验,有什么在提交应用程序时,除了在我的描述中添加上述提示之外,我可以做什么?
答案 0 :(得分:3)
我自己一直在研究这个问题。从我提出的方面来看,答案是您可以(并且应该)清楚地指定您的应用程序的最低要求,但您还必须使其与所有当前的iPhone型号兼容。
Apple' App Distribution Guide - >部分设置架构 - > "重要:商店拒绝仅支持armv7s的二进制文件。如果armv7s包含在Valid Architectures列表中,则还必须包含armv7。"
如果您的应用程序在4s上运行不正常,您可以选择暂停发布,直到4s兼容性要求被删除(可能是iPhone 6发布时)。
答案 1 :(得分:1)
我在发布iOS游戏时遇到了同样的问题,并且出于性能原因想要降低iPhone 4兼容性。
(抱歉旧时尚方式的Objective-C代码!)
@implementation G1Utils:NSObject
+ (BOOL)isiPhone {
return UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone;
}
+ (BOOL)isiPhone3Dot5Inches {
return [self isiPhone] && [[UIScreen mainScreen] bounds].size.height == 480;
}
@end