Xcode Cloud Notes
Xcode Cloud 是什么?
Xcode Cloud 是一个搭建在苹果的开发工具链之上的 CI/CD 系统,和苹果的 Xcode、TestFlight 以及 App Store Connect 整个开发工具和生态进行打通。Xcode Cloud 使用 Git 作为项目的代码管理工具,通过 CI/CD,帮助开发者打造更高质量、更稳定的 app。从 Xcode 13 版本开始支持,目前在 beta 阶段,免费限量内测申请,2022 年对所有人开放,具体价格待公布。
Xcode Cloud 能做什么?
- 自动构建和运行测试
- 自动在模拟器里运行测试程序
- 接收 Xcode Cloud 返回的构建结果通知,提前发现问题
- 通过 TestFlight 分发新版本给测试用户
- 创建供苹果审核的新版本
- 使用 Xcode 和苹果的云基础设施协同开发
CI / Automated Building and Testing
通常的开发流程是这样的,编码、build 整个工程,在模拟器或者测试机上验证修改。也可能会包括运行一下基于 XCTest 的单元测试,甚至集成测试、性能测试以及 UI 交互测试。
有了 Xcode Cloud ,开发者可以花费更少的时间,在多个模拟设备上构建、运行和测试自己的项目
在跑完这个流程之后,Xcode Cloud 会已邮件的方式通知开发者,帮助开发者提前发现问题。
CD
当 Xcode Cloud 构建并验证完一个代码改动(CI)之后,它可以自动第提交一个 beta 版本到 TestFlight,或者直接提交一个 release 版本到 App Store 供审核,这个过程我们称之为 CD.
这一步对开发者来说方便了很多,凡是有过打包上传到 App Store 的朋友可能都遇到过类似的困扰,打包完上传过程非常漫长,有时候尝试多次,甚至科学上网才能传的上去。有了 Xcode Cloud 之后,一方面这个过程直接在苹果的的 server 上去做,应该能快很多,另一方面无人值守,节省了了人力成本。
使用 Xcode Cloud 需要满足哪些条件?
开发者账号要求
- 必须加入了苹果开发者计划
- Xcode 里登录上开发者 Apple ID
- App Store Connect 里有一个 app record. 创建 app record 需要有 Manager/Admin/Account Holder 的权限
工程设置
代码管理要求
Xcode Cloud 支持以下的 SCM 提供商:
Ref: