armv7 未包含在构建中

armv7 not included in build

我的目标和项目构建设置都设置为 arm64 armv7 armv7s 作为有效架构。

当我存档并上传构建时,iTunes Connect 将其分类为仅 arm64。在 "Supported Architectures" 下,iTunes Connect 仅显示 arm64。这使得我的应用程序不适用于旧设备(iPhone 5、iPad 2、iPad Mini 1 等)

以前有人遇到过这个吗?我在 Xcode 设置中支持 armv7,但该支持未包含在我正在归档的构建中。

我怀疑您只是在构建活动架构。

Release 配置修复此集 Build Active Architecture OnlyNO

即使这个话题已经有了公认的答案,这个答案在任何情况下都是不正确的。

在某些情况下,您的应用程序将所有已知架构都视为有效架构,将“仅构建活动架构”设置为“否”以发布,但仍然遇到此问题。

原因是:如果您的部署目标是 iOS >= 11,那么这将 运行 在以 iPhone 5s 开头的设备上。 iPhone 5s是第一个arm64设备。因此 XCode(至少在版本 10 中)不包含除 arm64 之外的任何其他内容,即使您已按照建议进行了所有设置。

通常这不是问题,但如果您使用的是 Pods,它可能会导致“符号过多”问题,它随体系结构 < arm64 的二进制文件一起提供。这些将具有 armv7 的符号,即使您上传的没有 armv7 的二进制文件。

因此建议通过更改 PodFile 并仅包含 arm64 的符号来解决这个问题。