【问题标题】:Getting error while building iOS app from flutter从颤振构建iOS应用程序时出错
【发布时间】:2020-03-06 05:31:10
【问题描述】:

我正在尝试从 Flutter 构建 iOS 应用程序并遇到错误。

【问题讨论】:

    标签: ios flutter flutter-dependencies


    【解决方案1】:

    阅读https://github.com/flutter/flutter/issues/17749

    Check Configuration here

    简而言之:

    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。

    【讨论】:

    • 我已添加此设置,但仍然遇到问题
    猜你喜欢
    • 2020-05-11
    • 1970-01-01
    • 2021-01-05
    • 1970-01-01
    • 2021-03-20
    • 2021-11-03
    • 1970-01-01
    • 1970-01-01
    • 2021-03-19
    相关资源
    最近更新 更多