我想将我的通用构建应用程序限制为iPhone4 / iPad,并且我已将UIRequiredDeviceCapabilities
设置为包含“armv7”。在我设置的构建设置中:
"Architectures" = "Optimized (armv7)"
"Valid Architectures" = "armv7"
但我的通用应用程序的发布和发布版本正在生成此警告:
warning: iPhone apps should include an armv6 architecture (current ARCHS = "armv7")
这甚至是一个真正的问题吗?我可以安全地忽略警告吗?为什么我的调试版本没有显示相同的警告 - 构建配置具有相同的设置?
我正在使用XCode 3.2.5,4.2 SDK构建。
与此问题相似,但并不完全相同:
"Warning: iPhone apps should include an armv6 architecture" even with build config set
答案 0 :(得分:2)
我遇到了同样的问题。我相应地设置了项目设置,但在构建发布版本时仍然出现错误。我必须编辑目标设置,并发现“仅构建活动体系结构”已检查发布配置。取消选中它解决了警告。我希望这可以帮助别人。
答案 1 :(得分:1)
仅构建活动架构最适合用于调试和模拟器构建。
iOS部署目标版本决定了所需的体系结构。 iOS 4.2及更早版本包括对armv6处理器的支持;因此,Xcode希望您为可能分发的构建构建该架构。
如果您真的不想要armv6代码,并了解应用商店会拒绝您的应用,如果它针对iOS 4.2或更早版本且没有armv6,那么我建议只更改“架构”设置只针对armv7。
答案 2 :(得分:0)
你可以只在你想要的时候使用arm7,但如果你想限制在iPhone 4 / iPad上,那是因为你有充分的理由吗?要限制设备,您需要在Info.plist中使用UIRequiredDeviceCapabilities
,否则拥有以前iPhone的用户将找到您的应用,但无法使用。
PS:要为iPad和iPhone找到设备功能并不容易,例如你可以说你想要带有前置摄像头的设备,但这将限制在iPhone 4和iPad 2(而不是iPad 1)< / p>