armv7不包含在构建中

Ran*_*rns 2 xcode itunesconnect armv7 ios arm64

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

  • 架构:标准架构(armv7,arm64)-$
  • 有效架构:arm64 armv7 armv7s

当我存档并上传构建时,iTunes Connect将其分类为仅arm64。在“支持的体系结构”下,iTunes Connect仅显示arm64。这样一来,我的应用就无法用于旧设备(iPhone 5,iPad 2,iPad Mini 1等)

有人遇到过吗?我在Xcode设置中支持armv7,但是该归档中未包含该支持。

dec*_*des 5

即使该主题已经有了公认的答案,但无论如何都不是正确的。

在某些情况下,您的应用程序具有所有已知的体系结构(即有效体系结构),仅“构建活动体系结构”为“不发行”而仍然存在此问题。

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

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

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

  • 谢谢,在我的情况下,将目标从 12.2 更改为 9 会生成包含 armv7 的胖库。 (2认同)

sha*_*ght 2

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

要修复此设置Build Active Architecture OnlyNO进行Release配置。