你可以在构建设置中要求使用 iPhone 3Gs(或更新版本)吗?

5
我的应用程序不能在较慢的硬件上运行,但我想支持iOS 4.0,这可以在iPhone 3G(以及相当于第二代iPod touch)上运行。是否有一种方法可以通过构建设置防止安装?(我不想在应用程序启动时在代码中强制执行它。)
我认为VALID_ARCHS构建设置可能会通过删除arm6(仅留下arm7)来实现,但我成功地将其安装在第二代iPod touch上。

1个回答

3
(当我发布这个问题的时候,我已经找到了答案,但是“iPhone 3Gs和iPhone 3”这个问题不太容易搜索,所以我发布了这个问题并回答它,以帮助未来的其他人。)
iPhone 1、iPhone 3G是armv6架构,而 iPhone 3Gs、iPhone 4则是armv7架构(iPad是armv7架构)。
您应该在Info.plist中设置UIRequiredDeviceCapabilities属性为所需的架构(在此情况下为armv7)。您还应该从目标构建设置中删除armv6以减少编译时间。
原始答案在这里
编辑:苹果不会接受带有这个密钥的提交。我将尝试可能重复的问题,然后在这里更新我的答案。
编辑2:看起来那个答案起作用了。
FYI:最终我不得不支持旧型号,因为我的应用程序曾经被错误地发布过。苹果的系统要求您支持您曾经支持过的所有硬件型号。 (这对于消费者来说是有意义的,即您下载或购买的应用程序不应该停止工作,但对我来说却很糟糕。)

下次请标记该问题为重复。 - Black Frog
如果我认为我的问题更好,@Black Frog,请将其标记为重复吗? - zekel
当一个问题被标记时,其他人也会进行审核。如果你的问题更好,那么它将保持开放状态。 - Black Frog
即使您的问题被关闭为重复,这两个问题也将链接在一起,以便搜索其中一个问题的人可以找到另一个问题。 - Brad Larson

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