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

如何用Flutter在App Store Connect发布同名iOS和macOS应用

Flutter环境下发布独立同名macOS应用(不同Bundle ID)

先明确两种方式的区别

  • Xcode iOS项目里的「Enable support for macOS」是创建Mac Catalyst应用,本质是将iOS应用适配到macOS,共享iOS代码基础,但这种方式更适合纯原生iOS项目转macOS。对你的Flutter场景来说,因为Flutter本身提供独立的macOS项目支持,且你需要不同Bundle ID来区分平台、适配第三方服务,所以这种方式并非最优选择,会导致两个平台的配置耦合,不利于独立调试和第三方服务配置。
  • 正确路径是基于Flutter独立的macOS项目,配合App Store Connect单独创建macOS应用记录,完全分离两个平台的配置。

具体操作流程

1. 在App Store Connect创建macOS应用记录

  • 登录App Store Connect,点击「Add a macOS app」
  • 填写以下信息:
    • Bundle ID:选择com.myapp.macos(如果未在开发者后台注册,App Store Connect会自动帮你注册)
    • 名称:和iOS应用保持一致
    • 选择对应的开发者团队,完成应用创建
  • 后续配置:完善定价、分级、隐私政策链接等基础信息,和iOS应用的配置流程一致

2. 配置Flutter macOS项目

  • 打开Flutter项目根目录下的macos/Runner.xcworkspace(注意是macOS目录下的工程,不是iOS的)
  • 在Xcode中选中Runner目标,进入「General」标签页:
    • 修改「Bundle Identifier」为com.myapp.macos
    • 配置签名:勾选「Automatically manage signing」,选择你的开发者账号,Xcode会自动生成对应的Provisioning Profile(前提是App Store Connect已经创建了该Bundle ID的应用记录)
  • 第三方服务适配:
    • 针对你使用的第三方服务(如推送、统计、支付等),在其后台添加com.myapp.macos这个Bundle ID
    • 将第三方服务提供的配置文件(如GoogleService-Info.plist)替换或添加到macOS项目的Runner目录下

3. 构建并上传到App Store Connect

  • 终端运行命令生成Release包:
    flutter build macos --release
    
  • 在Xcode中打开macOS工程,选择「Product」→「Archive」,等待归档完成
  • 打开Xcode的「Organizer」,选中刚生成的归档,点击「Distribute App」,选择「App Store Connect」,按照向导完成上传
  • 回到App Store Connect,找到你的macOS应用,在「TestFlight」或「App Store」标签页中选择刚上传的构建版本,提交审核即可

注意事项

  • 两个平台的版本号、构建号可以独立设置,但建议保持逻辑上的协调(比如大版本号一致)
  • 测试macOS应用时,重点验证平台特定功能:如文件系统权限、通知授权、窗口管理等,这些和iOS存在差异
  • 确保开发者账号的权限足够,能够创建macOS应用和生成对应的签名文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 11:23:01