fastlane 踩坑实录

本文介绍了如何使用fastlane简化iOS应用的打包和提测流程,包括安装、初始化、fastlane Plugins、fastlane与CocoaPods的结合使用,以及打包脚本的编写。在实践中遇到了自动更换Bundle ID、描述文件等问题,并给出了解决方案,旨在帮助开发者提高效率,避免打包过程中的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个世界是懒人创造的。

人懒了就会发明各种各样的工具,或者寻找各种各样能够给自己偷懒机会的工具,当然我还停留在使用各种工具的阶段。或者可能不是因为懒,只是为了我们的生活更方便。

回到开发上,传统打包提测的过程比较恶心,尤其是iOS一个工程可能有不同的bundle ID,使用各种各样的配置环境,各种各样的证书打各种各样的包来给测试人员使用,然后会发现,在打包的时候要注意好多东西,各种配置,证书,bundle ID,如果项目复杂的话就会可能打出来的包并不是测试人员要的包,或者哪个地方设置有问题就还得重新打一遍,作为开发人员的我们很头疼的好吧。

为了打包提测整个流程更方便,还有就是作为开发人员哪的我们把重点放在开发上而不是打包上,各种各样的自动打包构建提测工具就应运而生,我们本文提到的fastlane就是一种,集各种强大功能于一身,几乎可以解决我们打包提测整个流程的所有事情。

安装

这个就不多说了,参见官方文档就好了fastlane setup

初始化

官方文档给出了两种语言初始化方法
默认的Ruby的,以及Swift的,由于Swift现在还是beta版本,所以我们还是选取Ruby版本
打开终端,cd到项目根目录

fastlane init

执行完成之后会发现我们项目根目录多出了两个文件:
fastlane 文件夹——文件夹中包括Appfile(存储配置项,例如bundle ID,itunes_connect_id等),Fasefile(打包脚本)
Gemfile(Ruby的包管理工具,类似于iOS开发中的CocoaPods) 文本文件

fastlane action

fastlane提供了好多的action,包括证书的创建管理(cert),provisioning profile的创建管理(sigh, match),自动截图,打测试包上传到TestFilght,打线上包上传到App Store,通过各种各样的插件或者action打各种各样的包,打包之前之后进行各种操作等等。。。。由于我这里用到的东西比较少,更多的功能可以自行挖掘fastlane actions

fastlane Plugins

fastlane通过各种插件可以拓展更多的功能available plugins

fastlane search_plugins [pluginName] #通过该命令查找插件
fastlane add_plugin [pluginName] # 通过该命令安装插件

fastlane CocoaPods

fastlane默认支持CocoaPods,只需要在打包脚本中添加一行cocoapods就OK了,但是实际使用的时候可能会有问题,这个问题貌似跟Ruby使用Gem作为包管理方式有关,直接这样写得时候回提示找不到Pod,需要在项目根目录中我们做初始化的时候生成的Gemfile做一下配置

source 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值