[英]Getting error while building iOS app from flutter
阅读https://github.com/flutter/flutter/issues/17749
简而言之:
Flutter 框架包含 armv7、arm64 和 x86_64 切片,但不包含 i386。 在模拟器中运行时,Xcode 会默默地将 armv7 映射到 i386 模拟器,将 arm64 映射到 x86_64 模拟器。 ONLY_ACTIVE_ARCH=YES 构建设置仅针对您所针对的设备或模拟器的架构进行构建。 Xcode 文档:
如果启用,则仅构建活动架构。 当使用未定义特定架构的运行目标(例如“通用设备”运行目标)进行构建时,将忽略此设置。
因此,如果您的目标是最新的 iOS 设备,它将构建 arm64,如果您的目标是最新的模拟器,它将构建 x86_64。 ONLY_ACTIVE_ARCH=YES 是新 Xcode 项目调试构建配置的默认值。
如果您有 ONLY_ACTIVE_ARCH=NO 并以真实设备为目标,它将构建 armv7 和 arm64 并成功。 如果您以模拟器为目标,它将尝试构建 i386 和 x86_64 并失败并显示此错误,因为缺少 i386。 ONLY_ACTIVE_ARCH=NO 是新 Xcode 项目发布构建配置的默认值,因为您需要将所有有效架构发布到 App Store。
模拟器上的 Release 不支持 Flutter。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.