使用 Xcode 7 提交应用程序:错误 ITMS-90533 缺少架构。扩展包需要“arm64”的 UIRequiredDeviceCapabilities 值

Posted

技术标签:

【中文标题】使用 Xcode 7 提交应用程序:错误 ITMS-90533 缺少架构。扩展包需要“arm64”的 UIRequiredDeviceCapabilities 值【英文标题】:Submitting App with Xcode 7: ERROR ITMS- 90533 Missing Architecture. Extension Bundle requires a UIRequiredDeviceCapabilities value of "arm64" 【发布时间】:2015-09-12 01:14:17 【问题描述】:

我正疯狂地尝试为 ios 9 发布提交我的应用程序,但我遇到了一个奇怪的问题。

当我尝试通过 Xcode 7 提交我的应用程序二进制文件时,我收到以下错误:

让我害怕的是googling ERROR ITMS-90533 没有返回任何结果。


架构构建设置似乎按照*** question 进行检查。在 Project 目标和 Extension 目标中:

Architectures 在项目目标和扩展目标中均设置为 Standard Architectures (armv7, arm64)

Build Active Architecture 设置为 NORELEASE

Valid Architectures 设置为arm64, armv7, armv7s

我现在不确定该怎么做。我已经尝试过使用这些设置,但似乎没有任何效果。任何帮助都会非常棒。

【问题讨论】:

【参考方案1】:

我设法上传了一个类似的应用程序(其中包含与您的一样的内容拦截器扩展程序),并进行了以下两项更改。

首先,Architectures 和 Valid Architectures 都只包含 arm64。

其次,扩展程序和主应用程序的 Info.plist 包含以下内容,将此应用程序/扩展程序限制为 64 位架构:

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>arm64</string>
</array>

内容拦截器扩展只应为 64 位。不确定混合 32/64 位应用程序是否也可以包含仅 64 位扩展。为了安全起见,由于内容阻止是我的应用程序的主要/唯一功能,我将应用程序和扩展程序都设置为 64 位。


更新,2016 年 3 月。使用 Xcode 7.2.1,您不再需要将架构设置为注释下方的一条评论。您只需要设置所需的设备能力和有效的架构。 (当您使用标准 Xcode 模板创建新的 Content Blocker 扩展时,您可以看到这是默认设置。)

【讨论】:

只需要更改有效架构并添加所需的设备功能标志(无需更改架构)。 感谢这工作。我必须将主应用程序和扩展架构以及有效架构都设置为 arm64 将架构和有效架构都设置为 arm64 为我解决了这个问题。我将 UIRequiredDeviceCapabilities 值保留在 arm7(Xcode 7.2.1/iOS 9.2)(我在 Apple’s Device Compatibility page 上找不到 arm64 作为有效设置,并且在尝试在我的 iPhone 6 上安装应用程序时使用该值引发错误)

以上是关于使用 Xcode 7 提交应用程序:错误 ITMS-90533 缺少架构。扩展包需要“arm64”的 UIRequiredDeviceCapabilities 值的主要内容,如果未能解决你的问题,请参考以下文章

使用 xcode 6 提交时出现错误 ITMS-9000“无效的图像路径”

错误 itms-90035 - Xcode

Xcode 7 无法使用 ITMS-90163 和 ITMS-90535 发布 iOS 应用程序

MobileFirst 7.0 应用程序在提交到苹果应用商店时给出“ERROR itms-90035”

Appstore 提交期间 Xcode 中出现错误 ITMS-90203

错误 ITMS-90596 / Xcode 的 GM 版本 / Phonegap