怎么用 FlutterFlow 把应用发布到 App Store?

FlutterFlow 的 iOS 发布做得挺完整:在 Settings → App Details 里配好签名信息,点一下 Deploy to App Store,它就会在云端构建 IPA、用你的证书签名,然后直接传到 App Store Connect,整个过程五到十五分钟。你这边不需要 Mac,也不需要装 Xcode。

前提是那两样东西得先有:签名证书和描述文件 。FlutterFlow 只负责用它们签名,不负责替你生成。这一步我在 Windows 上用开心上架(AppUploader)搞定,全程不碰 Mac。

先说结论:哪一步真绕不开 Mac

环节 我实际怎么做的
注册 Bundle ID、签发证书、生成描述文件 Windows 上做完
编译签名成 IPA FlutterFlow 云端构建
提交 App Store FlutterFlow 直接传,也可以自己传
装到 iPhone 测试 扫码注册 UDID,再扫码装

一整列都不需要 Mac。顺带说明,我用的签证书工具本身也不是 Windows 专属,网页版换成 macOS 或 Linux 的浏览器一样能开,桌面客户端有 macOS 版。

第一步:定好 Bundle Identifier

在 FlutterFlow 的 Settings → App Details 里设 Bundle ID,用反向域名,比如 com.yourcompany.appname

这个值后面注册 Bundle ID、绑定描述文件都要用同一个,三处完全一致才行。

如果你在做多环境(开发 / 预发 / 生产),每个环境要用各自独立的 Bundle ID、证书和描述文件,别混用------混用的话装到同一台手机上会互相覆盖,线上包也可能被测试包顶掉。

第二步:在 Windows 上签出证书和描述文件

注册 Bundle ID :开心上架的「Bundle ID」页面点「新建 Bundle ID」,Identifier 填上一步那个值。创建后改不了。要用推送、Sign in with Apple 这些能力的,在这个 Bundle ID 的「权限」页面勾上再保存------FlutterFlow 里开了对应功能但 Bundle ID 权限没勾的话,描述文件是不匹配的,构建会失败。

签发证书 :「证书」页面点「新建证书」,上架选发布签名证书。绑定上面的 Bundle ID,填名称邮箱,设一个 .p12 保护密码。服务器不保存这个密码,忘了只能吊销证书重签,依赖它的描述文件也全要重建。

建议勾上「使用开心上架服务同步证书」。做多环境或者多个 App 的时候,同一张证书能反复用(证书绑账号,描述文件才是每个 App 独有的),云备份省得到处找文件。

生成描述文件 :「描述文件」页面点「新建描述文件」,上架选 App Store 类型,内测选 Ad Hoc 并把测试设备勾上,关联上面的 Bundle ID 和证书,提交后下载 .mobileprovision

整个过程在浏览器加 Windows 上完成,和 FlutterFlow 本身的工作方式挺搭的------都不用装本地开发环境。

第三步:在 FlutterFlow 里配签名并发布

回到 Settings → App Details,找到 iOS Deploy 那一块:

  1. 上传第二步的签名证书和描述文件;
  2. 确认 Bundle ID 和你注册的那个一致;
  3. Deploy to App Store

它会在云端构建 IPA、签名,然后直接上传到 App Store Connect,一般五到十五分钟。传完之后去 App Store Connect 选构建版本、填元数据、提交审核。

构建失败最常见的原因还是证书和描述文件不配对------描述文件里关联的证书必须包含你上传的那张。在开心上架的描述文件详情里能直接看到它关联了哪些证书、绑的是哪个 App ID、什么时候过期,对不上就点「重建」。

第四步:想自己控制上传的话

FlutterFlow 也支持把代码下载下来自己构建,或者你拿到 IPA 之后想自己传。这种情况下我一般先在开心上架的「文件&提交」页面把包打开看一眼签名信息,确认没问题再点「提交 App Store」。

命令行版本,在 Windows 上直接跑:

bash 复制代码
appuploader-cli upload -f app.ipa -u dev@example.com -p abcd-efgh-ijkl-mnop

-p 是 Apple 账号页面生成的 App 专用密码,格式 xxxx-xxxx-xxxx-xxxx,不是登录密码。也可以用 App Store Connect API 密钥:

bash 复制代码
appuploader-cli upload -f app.ipa --api-key <KeyID> --api-issuer <IssuerID> --private-key Auth_Key.p8

密钥方式只收 .ipa,且要求 App 已经在 App Store Connect 里建好。

第五步:发内测包

上架前想先给人试用的话,在「设备」页面点「注册设备」,二维码发出去让人扫,UDID 就自动上报了(一年 100 台名额,免费账号只有 3 台)。

回描述文件那边点「重建」,生成一份包含这些设备的 Ad Hoc 描述文件,换进 FlutterFlow 重新构建,再在「文件&提交」页面生成二维码让人扫码装。

写在最后

FlutterFlow 把"构建 + 上传"这一整段都做进产品里了,剩下要你自己准备的就只有签名材料。对完全没有 iOS 背景的人来说,这一段的门槛其实比拖界面高得多------但它跟你用什么工具开发无关,一次配好之后很久都不用再动。我用的是开心上架网页版,打开就能用,和 FlutterFlow 一样不用装东西。

相关推荐
峥嵘life1 小时前
2026华为AI码道 CodeArts 使用分享:Windows端 + 服务器CLI 实战总结
android·大数据·开发语言·python
yxlalm1 小时前
对话记忆持久化-Redis热与MySQL冷
android·redis·mysql
zwd20052 小时前
TransPeek vs 沉浸式翻译:iPhone 看外文网页,选浏览器插件还是屏幕翻译?
iphone·屏幕翻译
1570925113410 小时前
Android进阶之光:HTTP协议原理深度解析
android·网络协议·http
终端安全笔记11 小时前
安卓五品牌通道差在哪:监管通道拆解
android
v_348360876212 小时前
Android native端 堆栈打印
android·算法
一笑的小酒馆12 小时前
AndroidKMP之导航和WebView
android
2501_9327502615 小时前
Android BottomNavigationView 入门介绍
android