有一次排查一个启动闪退问题,我连续切换了五个窗口。
Xcode 看崩溃日志,Charles 抓接口,请求数据之后又去 VSCode 改配置文件,最后还要重新打包上传 TestFlight。
问题本身不复杂,但开发过程已经明显变成了一个流程
现在再看 iOS 开发,已经很难只依赖单一工具完成所有事情。代码编辑、依赖管理、自动化构建、真机调试、上传发布,每个环节都在逐渐拆分。
这篇内容整理了目前开发过程中比较常见的 10 款 iOS 开发工具。它们不一定属于同一种类型,但都在实际项目里承担着明确角色。
1. Xcode
无论工具生态怎么变化,Xcode 仍然是 iOS 开发里的核心环境。
很多事情离不开它:
- 工程管理
- Interface Builder
- 模拟器
- 证书管理
- 真机调试
即使有些开发者已经开始用 VSCode 写 Swift,最终项目构建依然会回到 Xcode 工具链。
尤其是在处理:
- Provisioning Profile
- Archive
- TestFlight
这些流程时,Xcode 仍然承担着关键角色。
2. VSCode
VSCode 现在已经不只是 Web 开发工具。
很多移动端团队开始用它处理:
- Swift 文件
- Flutter 项目
- 配置脚本
- Git 管理
原因很直接:
开发上下文更统一。
如果同一个项目同时包含前端、Node 服务和 Flutter 模块,那么统一编辑器会减少频繁切换。
AI 插件、Git 插件以及终端能力,也让它越来越适合日常开发。
3. Fastlane
Fastlane 更像一个“自动执行开发动作”的工具。
例如:
fastlane beta
可以自动:
- 构建项目
- 生成 IPA
- 上传 TestFlight
对于每天都需要重新打包测试版本的团队来说,这类自动化工具会减少很多重复操作。
4. CocoaPods
虽然很多 Swift 项目已经开始迁移到 SPM,但 CocoaPods 依然存在于大量历史工程里。
执行:
pod install
之后生成 workspace,再由 Xcode 打开。
一些旧 SDK 仍然依赖 CocoaPods,因此它短时间内不会消失。
5. Swift Package Manager(SPM)
SPM 是 Apple 官方提供的依赖管理方案。
它最大的特点是直接集成在 Swift 工具链里。
很多新项目现在更倾向:
- 使用 SPM 管理库
- 减少 workspace 复杂度
- 降低第三方依赖管理成本
对于纯 Swift 项目来说,SPM 已经越来越常见。
6. Charles
很多接口问题并不出现在代码里,而是发生在请求过程。
Charles 在 iOS 开发中的作用主要是:
- 抓包
- 查看接口返回
- 分析网络请求
- 模拟异常响应
例如:
- 某个字段缺失
- Header 不正确
- HTTPS 请求失败
这些问题通过抓包会更容易定位。
7. App Store Connect
严格来说,它不属于开发工具,但发布阶段离不开它。
包括:
- TestFlight 管理
- 审核提交
- 版本信息维护
- 崩溃日志查看
很多开发动作的终点都会回到这里。
8. AppUploader
有些团队会把“上传 IPA”这个动作独立出来。
AppUploader 的定位更偏向:
- 上传安装包
- 管理发布流程
对于不想频繁打开完整 IDE 的场景,会更直接一些。
9. GitHub Actions
CI/CD 工具已经越来越常见。
GitHub Actions 可以在代码提交之后自动执行:
- 编译
- 测试
- 构建
- 上传
对于多人协作项目来说,自动化流水线已经逐渐成为基础设施的一部分。
10. 快蝎(kxapp)
最近看到一个比较有意思的 iOS 开发工具:快蝎(kxapp)。
它和前面这些工具不太一样。
很多工具是在解决某一个环节的问题,例如:
- Fastlane 负责自动化
- Charles 负责抓包
- VSCode 负责编辑
快蝎更像是在尝试把几个开发环节重新整合起来。
目前它支持:
- Swift 项目
- Objective-C 项目
- Flutter 项目
编辑器基于 VSCode 架构,同时内置了自己的 iOS 编译工具套装。
项目修改之后,可以直接进行:
- 构建
- 真机运行
- 安装包生成
对于需要频繁切换项目或者希望减少工具跳转的人来说,这类整合型工具会比较值得关注。
工具越来越多之后,开发方式也在变化
现在的 iOS 开发,很少再是“一个 IDE 完成全部”。
更多时候,开发者会组合不同工具:
- VSCode 写代码
- Xcode 管理工程
- Fastlane 自动构建
- Charles 调试接口
- GitHub Actions 处理发布流程
工具本身没有统一答案。
不同团队会形成不同工作流。
随时随地看视频