You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用Codemagic构建Flutter应用遇问题:iOS构建失败及App framework未找到

嘿,我之前在Codemagic上折腾Flutter iOS构建时,刚好碰到过这俩问题,给你分享下我亲测有效的解决办法:

一、无法完成iOS应用构建

iOS构建失败的原因挺多的,我整理了几个高频场景的修复步骤:

  • 匹配Xcode与Flutter版本
    Codemagic默认的Xcode版本可能和你本地用的不匹配,比如Flutter 3.10+必须搭配Xcode 14.3及以上才能正常构建。你可以在Codemagic工作流的「iOS build configuration」里手动指定对应版本,别用默认的旧版本。
  • 核对签名配置细节
    十有八九的iOS构建失败都是签名坑。先确认你上传的Provisioning Profile和Signing Certificate是对应Bundle ID的,而且Apple Developer账户没过期、权限正常。如果用自动签名,记得在Codemagic里绑定好你的Apple账户,开启自动管理签名选项。
  • 强制清理构建缓存
    缓存有时候会搞出莫名其妙的问题。在构建前加一步清理操作:执行命令 flutter clean && rm -rf ios/Pods && rm -rf ios/Podfile.lock && pod install,把旧的构建产物、Pod依赖全清了重新来。
二、构建时提示“App framework is not found”错误

这个错误一般是框架文件丢失或者路径配置错了,试试这些方法:

  • 重新生成Flutter框架文件
    有时候代码拉取不全或者缓存异常,会导致ios/Runner/Frameworks目录下的Flutter.framework丢失。你可以在Codemagic的构建脚本里先加一步 flutter build ios --debug,让Flutter自动生成完整的框架文件,再执行正式构建。
  • 检查Podfile配置
    打开iOS目录下的Podfile,确认里面有这段关键配置:
    post_install do |installer|
      installer.pods_project.targets.each do |target|
        flutter_additional_ios_build_settings(target)
      end
    end
    
    要是你用了第三方原生框架,也得核对它们的路径有没有写错,别把框架引到不存在的位置。
  • 调整构建命令逻辑
    别图省事跳过关键步骤,比如pod installflutter pub get必须在构建前执行。如果是未签名的测试构建,用完整命令:flutter build ios --release --no-codesign;如果是正式签名构建,确保签名参数和配置对应上。

内容的提问来源于stack exchange,提问作者Gagan Garcha

火山引擎 最新活动