我们是否需要为#34; armv7"编译iOS App?和" arm64"如果我的部署目标是8.0?

时间:2016-02-25 10:04:09

标签: ios cpu-architecture armv7 arm64

我的应用程序支持iOS8.0及更高版本。我知道从iOS7开始它的arm64位架构。在那种情况下,我们是否需要为" armv7"编译二进制文件。和" arm64"片

如果我单独为arm64编译,我可以减少我的App大小。这是正确的方式吗?

请帮忙。

3 个答案:

答案 0 :(得分:1)

enter image description here

您需要为这两个

构建应用

答案 1 :(得分:1)

根据我对Apple文档的理解,当您针对特定架构进行编译时,App的大小将会减少。它正确的做法。

Apple文档:

  

目标更少的CPU

     

默认情况下,Xcode项目配置为生成优化副本   您的应用程序在可执行文件的CPU特定“切片”中。不同   硬件将运行不同的可执行文件片段。这使得   强大的优化,只能在某些设备上实现。   但是,这可以大大增加您的应用程序的大小   可执行文件。

     

要仅定位特定CPU,请更改“体系结构”构建设置   从标准$(ARCHS_STANDARD)到特定名称列表   您想要支持的CPU。有效的CPU名称列在有效   体系结构(VALID_ARCHS)构建设置。不要更改有效   架构设置。它是残留的,最好由Xcode管理。

有关详细信息,请参阅this

答案 2 :(得分:0)

在这里您可以找到所有iPhone和Mac CPU架构的非常容易理解的解释:

Mac and iPhone CPU Architectures

当我决定从支持的体系结构中删除armv7架构时,这对我很有帮助:

  

排除体系结构时请仔细选择。使用armv7构建的应用程序将在所有当前的iOS设备上运行,甚至包括那些支持较新架构的设备(它将在iPhone 5S和更高版本上以32位运行)。但另一方面,没有armv7的应用程序构建将无法在旧设备(例如iPhone 4 / 4S或原始iPad mini)上运行。