2

我刚刚升级到 iOS5 / Xcode 4.2,我现在正在尝试向 App Store 提交应用程序。当我尝试验证我的存档时,我收到一条错误消息:

iPhone / iPod touch:应用程序可执行文件缺少所需的架构。至少必须存在以下架构之一:armv6

我检查了一些类似的问题,大多数接受的答案只是说设置Build Active Architecture OnlyNO. 我已经这样做了,但我仍然有同样的问题。这是我的钥匙:

Architectures:

Distribution: Standard (armv7) - $(ARCHS_STANDARD_32_BIT)

Base SDK : iOS 5.0

Build Active Architecture Only: NO

Valid Architectures: armv6 armv7

非常感谢任何有关如何解决此问题的帮助!

谢谢,
泰加

编辑:还将密钥 armv6 手动添加到 Build Settings 中的 Architectures 部分。不用找了。

4

3 回答 3

5

将 Target 设置为 iOS 4.3 将消除 App Store 错误,因为 iOS 4.3 需要 armv7 并且在较旧的 armv6 设备上不受支持。

于 2011-10-25T20:53:57.117 回答
1

我必须手动将 armv6 密钥添加到我正在归档的目标的架构部分......而不是整个项目。这有助于完成我向 AppStore 提交的工作,但我会坚持寻求更好的答案。

于 2011-10-17T19:18:46.307 回答
1

要继续支持旧架构(例如 iPhone 3G),只需选择您的应用程序目标并选择“构建设置”。在顶部,将列出的体系结构从“标准 (armv7)”更改为“其他”。在弹出框中,选择现有选项并单击减号按钮,然后单击加号按钮并添加“armv7”,然后再次单击加号并添加“armv6”。armv7 将支持较新的芯片,而 armv6 将重新添加对 iPhone 3G 的支持……前提是您将 iOS 部署目标设置为 iOS 4.2 或更早版本……您在 3.x 的设置应该没问题——这只是限制你显然不要使用 iOS 的新功能。

您可能还需要在“构建设置”的“其他 C 标志”下添加“-mno-thumb”,但如果我没记错的话,那可能只有在您想在旧架构上使用自动引用计数时才需要 - 和即使那样只是因为这是一个已知错误的解决方法。

于 2011-11-11T09:36:42.237 回答