Ios7 “中的Xcode生成设置应包括哪些内容?”;“建筑”;部分

Ios7 “中的Xcode生成设置应包括哪些内容?”;“建筑”;部分,ios7,ios6,ios8,xcode6,xcode5.1,Ios7,Ios6,Ios8,Xcode6,Xcode5.1,之前,我们的通用iOS应用程序支持iOS 6和iOS 7(这意味着我们同时支持iPhone和iPad)。现在,随着iOS 8的发布,我们必须支持iOS 6、iOS 7和iOS 8。此外,我们还必须扩大我们的目标设备列表,以支持iPhone 6和iPhone 6 Plus 此外,我们计划不久后升级到Xcode 6。因为苹果可能会在任何时候强制使用Xcode 6来向应用商店提交应用程序 记住以上几点,我对Xcode构建设置中的体系结构设置感到困惑。Xcode架构设置下主要有3个重要项目。请看下面的截

之前,我们的通用iOS应用程序支持iOS 6和iOS 7(这意味着我们同时支持iPhone和iPad)。现在,随着iOS 8的发布,我们必须支持iOS 6、iOS 7和iOS 8。此外,我们还必须扩大我们的目标设备列表,以支持iPhone 6和iPhone 6 Plus

此外,我们计划不久后升级到Xcode 6。因为苹果可能会在任何时候强制使用Xcode 6来向应用商店提交应用程序

记住以上几点,我对Xcode构建设置中的体系结构设置感到困惑。Xcode架构设置下主要有3个重要项目。请看下面的截图

我强调了3个重要参数。我想知道我应该为这些参数指定什么值,以支持上述所有功能。任何帮助都将不胜感激。我对此有点困惑


另外,我想知道是否需要更改任何其他内容才能迁移到Xcode 6和iOS 8。

体系结构中,您可以使用
armv7、armv7s、arm64、i386
,其中
i386
用于模拟器。其余部分可以保留为默认值

更新:为了支持iOS模拟器的构建,无需提及桌面架构(
i386
x86_64
)。仅通过包含各自的ARM体系结构即可支持给定的模拟器。因此,
架构
如果只使用
armv7 armv7s arm64
填充就可以了。通过观察,由于Xcode 6.3,如果设置包含任何桌面架构,甚至可能导致构建失败

有效的架构
可以为每个目标单独设置,Xcode将使全局
架构
设置与此交叉。如果您不感兴趣,请保持原样,Xcode将自行处理,不会出现任何问题

如果您的代码不是64位就绪,请从
体系结构
中删除
arm64
。该应用程序仍将在iOS 8和所有最近的64位设备上运行


至于
仅构建活动体系结构
,我建议将其设置为
。此属性影响Xcode决定构建的内容,例如基于当前连接的设备。但可能会出现问题:最终可能会出现一些针对不同体系结构构建的目标,从而导致链接错误。尽管如此,如果您想使用该功能的优点,请将其设置为仅用于
Debug
Yes
,或仅用于测试的某种配置,而不是最终版本。Xcode将只为您在
架构
x
有效
中设置的所有架构中的一个构建所有二进制文件。

如果您不是目标架构的专家,请删除所有架构并添加armv7和armv7。另外,如果您只为iOS构建,请检查您的目标,以便Xcode不会构建其他操作系统(可能需要其他体系结构)。

我想要一个这样的解释性答案。谢谢这是不正确的。您应该只包括arm架构。对于sim卡,Xcode将32位arm解释为i386,对于sim卡,同样将arm64解释为x86_64。请删除它。我使用我所写的内容。@列夫,请考虑更新你的答案。因为我不确定它是否与您添加的评论相符。谢谢你的解释性回答。如果您这样做,请在此处告诉我,否则我永远无法知道您已更新了答案。我的架构值是正确的,但是我将“仅构建活动架构”设置为“是”,并且我似乎在连接旧设备时归档了我的应用程序,这使得归档无法用于任何64位设备。将“仅构建活动体系结构”设置为“否”,然后重新归档解决了我的问题!