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

Flutter构建iOS包时缺失BuildName与BuildNumber的求助

解决Flutter iOS包BuildName/BuildNumber丢失的方案
  • 检查pubspec.yaml基础配置
    确保version字段格式正确,比如version: 1.0.0+6(前者对应BuildName,后者对应BuildNumber),不要遗漏+分隔符。

  • 确认iOS Info.plist变量绑定
    打开ios/Runner/Info.plist,确保以下两个字段值为Flutter动态变量:

    • CFBundleShortVersionString:$(FLUTTER_BUILD_NAME)
    • CFBundleVersion:$(FLUTTER_BUILD_NUMBER)
      不要设置为空或硬编码固定值。
  • 检查Xcode项目的Target配置
    打开ios/Runner.xcworkspace:

    1. 选中Runner目标,切换到「General」标签,确认「Version」和「Build」输入框显示为$(FLUTTER_BUILD_NAME)和$(FLUTTER_BUILD_NUMBER)
    2. 如果项目包含多个Target(如测试Target、扩展Target),需同步设置这些Target的Version和Build值,避免验证时遗漏。
  • 清理并重建项目缓存
    执行以下命令彻底清理缓存:

    flutter clean
    rm -rf ios/Pods ios/Podfile.lock
    pod install --project-directory=ios
    

    之后重启Xcode,重新执行构建命令。

  • 修正命令行构建参数格式
    去掉--build-name和--build-number的引号(部分Shell环境会解析错误),改用:

    flutter build ipa --obfuscate --split-debug-info=./debug-info --build-name 1.0.0 --build-number 6
    
  • 检查Xcode Build Settings版本配置
    在Runner目标的「Build Settings」标签,搜索「Versioning」:

    • 确认MARKETING_VERSION值为$(FLUTTER_BUILD_NAME)
    • 确认CURRENT_PROJECT_VERSION值为$(FLUTTER_BUILD_NUMBER)
  • 重新生成iOS项目文件(极端情况)
    备份ios文件夹后,执行命令重新生成iOS项目结构:

    flutter create --platforms ios .
    

    重新配置签名、权限等必要信息后再构建。

  • 验证IPA包正确性
    确保提交的是最新构建的IPA,路径为build/ios/ipa/[你的应用名].ipa,避免使用旧缓存包。

内容的提问来源于stack exchange,提问作者Binoy Babu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 06:52:24