iPhone / iPad Active架构?它是什么?为什么会这样?谁需要它?

时间:2010-04-20 19:38:59

标签: iphone xcode architecture ipad arm

这个选择是什么?我将架构设置为Optimized (armv6 armv7)所以一个胖二进制文件应该用两者构建,对吧?

那为什么需要在菜单中设置呢?它做了什么?

3 个答案:

答案 0 :(得分:10)

大多数情况下你并不需要它,但即使你正在构建胖二进制文件,你也可能并不总是在构建两个版本。

如果检查目标的构建设置,则在“架构”部分中有一个名为“仅构建活动体系结构”的选项。我认为默认情况下,在构建调试时会选择此选项。我们的想法是,如果您使用插入Xcode的armv6设备足够聪明,可以检测到这一点并且仅构建该版本,从而节省了一些时间。

当然,在构建分发时,不会检查选项以确保为两种体系结构(而不​​仅仅是活动体系结构)构建。

所以我想简短的回答是你确实需要弄乱它,因为Xcode会根据你插入的设备为你设置它。

答案 1 :(得分:3)

armv6与所有iPhone / iPod touch / iPad设备兼容。

armv7适用于支持OpenGL ES 2.0的新设备,包括iPhone 3GS,最近的iPod touch和iPad设备。

答案 2 :(得分:1)

Xcode会检测您已连接的设备,并相应地设置活动架构。因此,如果您将第二代iPod Touch插入计算机,Xcode应将活动架构设置为armv6。

创建用于发布到App Store的分发配置时,应确保未设置此选项,以便构建胖通用二进制文件