最近一段时间,我脑子里一直在想如何去简化我单位app上架的流程,说起这个上架的工作,简直就是一个无聊透顶的活,你需要把app所需要的各种资料编辑到itc后台,上传元数据,上传ipa包,这会占据我们大量的工作时间,所以有时候,为了上传这些资料你通常半天都干不了活。
于是我就一直在想如何才能将这些工作都集成起来做一套自动化的工具,这样我只需要打几条命令这些事情都能在后台默默的完成,而无需人力操作。
在“懒人”遍布的工程师世界中,总会有人想尽办法做出改变,于是这些“懒人”们乐此不疲的造出许多美妙的轮子,既方便了自己,又帮助了他人,让这个世界变得更加美好。
今天就给大家介绍其中一个轮子: Fastlane ,这个Github上的明星项目截止到目前共获得1万多个Star,并且还有1500多个Fork。
直到我在Github上遇到了fastlane, 我就对自己说:“你终于可以解放出来了”。
fastlane简介
fastlane 是一套工具,帮助你简化和自动化 App 发布或部署的过程,将之变成一条平直的工作流。通过 fastlane,你可以实现 持续分发(CD,一种用于自动化和改进软件分发过程的设计实践)。
通过 fastlane 内置的工具,你可以创建一个由 build task (又叫做 lane)构成的有序列表,你只需要点击一个按钮就可以将 App 发布到 App 商店。你可以节省大量的时间,用于提升软件质量,或者缩短团队中发布者的发布周期。
fastlane 的工具链
在 fastlane 这个大家庭中,包含了下列工具:
- produce 创建可用于 iTunes Connect 和 Apple Developer Portal 的 iOS app。
- cert 自动创建和维护 iOS 代码签名证书。
- sigh 创建、更新、下载和修复 provisioning profiles。
- snapshot 自动将 App 屏幕截图本地化到每种设备上。
- frameit 将屏幕截图适配到适当的设备屏幕大小。
- gym 创建和打包 iOS app。
- deliver 上传屏幕截图、元数据和 App 到 App 商店。
- PEM 自动创建和更新 Push 通知的 profile。
在部署实例 App 的过程中,这些工具中的大部分工具你都会用到。
fastlane 的运行环境
要让 fastlane 能够运行,你需要安装:
- OS X 10.9 (Mavericks) 以上
- Ruby 2.0 以上
- Xcode
- 拥有一个付费的苹果开发者账号
因为 fastlane 其实是一个 Ruby 脚本的集合,你必须安装正确的 Ruby 版本。 OS X 10.9(Mavericks) 以后默认安装的是 Ruby 2.0 .
结语
fastlane 的出现无疑解放了我们工程师的“双手”,真正的将工程师从各种无聊而又必须要做的重复性劳动和流程化工作中解放出来,专注于业务或架构本身,使得整个开发效率,测试效率,运维效率大大提升。这么好的工具就应当推荐给大家,另外如果在安装过程中遇到了难题,在fastlane的issue中也能很快速的找到解决方案。
就不多说废话了,感兴趣的可以在GitHub中直接搜索fastlane就可以找到它,去领略一下它的美妙之处吧!