Unity Cloud Build 自动化打包 IPA 并上传 App Store Connect 踩坑实录
最近给 Unity 项目搭建 iOS 自动化发布流程,最初计划使用 GitHub Actions 完成 Unity 构建、IPA 打包以及 App Store Connect 上传。但实际落地过程中发现,Unity Personal License 难以适配标准 CI 激活流程,而 Fastlane 在 Linux 环境上传 IPA 时又遇到了 AppStoreInfo.plist 缺失等问题。经过一系列踩坑与方案验证,最终放弃 GitHub Actions 与 Fastlane 上传方案,改用 Unity Cloud Build(UCB)负责构建,并通过 UCB Post-build Script 调用苹果官方上传工具完成 TestFlight 交付。同时利用 UCB 的 Pre-Export 和 Post-Export 回调自动解决 CFBundleVersion 递增以及 Export Compliance(出口合规声明)问题,实现了一套无需长期 Mac 环境、适用于 Unity Personal 用户的自动化发布流程。
本文记录整个过程中的几个关键坑点及最终解决方案,希望能帮助后来者少走一些弯路。