繁体   English   中英

如果我的部署目标是 8.0,我们是否需要为“armv7”和“arm64”编译 iOS 应用程序?

[英]Do we need to compile iOS App for both “armv7” and “arm64” if my deployment target is 8.0?

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

如果我单独为 arm64 编译,我可以减少我的应用程序大小。 这是正确的方法吗?

请帮忙。

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

当我决定从支持的架构中删除 armv7 架构时,它对我帮助很大:

排除架构时请谨慎选择。 使用 armv7 构建的应用程序将在所有当前的 iOS 设备上运行,即使是那些支持较新架构的设备(它将在 iPhone 5S 及更高版本上以 32 位运行)。 但另一方面,没有 armv7 构建的应用程序将无法在 iPhone 4/4S 或原始 iPad mini 等旧设备上运行。

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

苹果文档:

目标更少的 CPU

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

要仅针对特定 CPU,请将 Architectures 构建设置从 Standard $(ARCHS_STANDARD) 更改为要支持的特定 CPU 的名称列表。 有效的 CPU 名称列在有效架构 (VALID_ARCHS) 构建设置中。 不要更改有效架构设置。 它是残留的,最好由 Xcode 管理。

有关更多信息,请参阅

在此处输入图片说明

您需要为这两个构建应用程序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM