这个问题已经让我们发疯了一段时间。我们有应用程序,都是用 Titanium 构建的(我之所以提到这一点,是因为我不能 100% 确定问题不是来自那里)。这些应用程序已在商店中发布,自每次发布以来,我们都会对其进行几次更新。
目前,他们支持 armv6 和 armv7。
对于下一次更新,我们要添加对 iphone 5 的支持,这意味着我们必须放弃对 armv6 的支持。这绝对没问题。我们也不介意将最低操作系统版本设置为 4.3。
所以我们将 xcode 中的构建设置更改为armv7 armv7s,将最小操作系统设置为 4.3,添加视网膜屏幕等等,构建应用程序。我们保持原样。当我们尝试验证应用程序时,我们会收到以下消息:
此捆绑包不支持该应用程序的先前捆绑包中支持的一个或多个设备
带有指向苹果手册页的链接:http: //developer.apple.com/library/ios/#qa/qa1623/_index.html
这告诉我们错误可能是因为:
当您看到此错误消息时,您已更改“Targeted Device Family”构建设置(它修改了 UIDeviceFamily info.plist 键。)”
但我们没有。
此外,下面几行(在Targeting the latest iOS中):
例如,如果您的应用不再使用 armv6 构建,则不应将 armv7 添加到 UIRequiredDeviceCapabilities。这可能会导致 Xcode 或 iTunes Connect 错误地拒绝您的更新。
当然,我们没有这样做。
我们甚至试图将应用程序版本更改为下一个主要版本,因为有人说它解决了这个问题。
有没有人知道我们如何永久删除 armv6 支持?我们找到的唯一解决方案是删除应用程序并这次仅使用 armv7 重新创建它。这当然是不可接受的,因为我们会丢失评论、评分等。