You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M1芯片Mac运行/构建Flutter项目iOS端失败如何解决?

M1芯片Mac Flutter项目iOS端构建失败解决方案

核心错误修复(PhaseScriptExecution 找不到 /ios/Pods/Fabric/run 文件)

这是直接导致构建返回非零退出码的唯一原因,其余警告不会阻断构建流程,修复步骤如下:

  • 清理现有缓存与无效依赖
    依次在项目根目录执行以下命令:
    flutter clean
    进入iOS目录:
    cd ios
    执行解集成、删除旧Pod文件操作:
    pod deintegrate
    rm -rf Pods Podfile.lock ~/Library/Caches/CocoaPods
  • 替换废弃的Fabric脚本配置
    Fabric已经被官方废弃整合进Firebase Crashlytics,旧版run文件已不存在:
    1. 打开Xcode中的iOS项目,进入TARGETS > 你的项目名称 > Build Phases
    2. 找到引用/ios/Pods/Fabric/run的脚本执行阶段,直接删除该阶段
    3. 若项目仍需要崩溃上报能力,更新pubspec.yaml与iOSPodfile中的Firebase相关依赖到最新稳定版,添加新版Crashlytics执行脚本即可,脚本内容为:"${PODS_ROOT}/FirebaseCrashlytics/run"
  • 适配M1架构执行Pod安装
    在iOS目录下执行以下命令,强制通过x86_64架构拉取依赖,避免M1原生架构下旧依赖兼容问题:
    arch -x86_64 pod install --repo-update

剩余警告消除方案

  • 依赖废弃API警告:将pubspec.yaml中的permission_handler、Firebase系列依赖升级到支持当前Flutter版本的最新稳定版即可
  • iOS部署目标版本过低警告:打开ios/Podfile,将顶部的platform :ios版本修改为12.0(取消注释),并在文件末尾的post_install回调中添加以下代码,强制所有子依赖部署目标和主项目一致:
    post_install do |installer|
      installer.pods_project.targets.each do |target|
        flutter_additional_ios_build_settings(target)
        target.build_configurations.each do |config|
          config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
        end
      end
    end
    
  • AppIcon资源未分配警告:打开Xcode项目中的Assets.xcassets,将未绑定的AppIcon资源匹配到对应尺寸的占位位,或直接删除未使用的冗余AppIcon资源即可

构建验证

所有修改完成后回到项目根目录,执行flutter run选择iOS设备重新构建即可正常运行。

内容的提问来源于stack exchange,提问作者Vidya Jagtap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 05:24:09