最近公司项目刚刚完成大改版更新和上线,空闲出了一点时间,想到之前有段时间不停地更新版本,打包提交测试,有个更改又得重新打包。。真的是一天啥都没干,净是去打包了。抽了点时间,通过fastlane自动打包,现记录一下。
Fastlane是一套使用Ruby写的自动化工具集,旨在简化Android和iOS的部署过程,自动化你的工作流。它可以简化一些乏味、单调、重复的工作,像截图、代码签名以及发布App。
1.安装Fastlane
安装xcode命令行工具
在命令行里运行如下命令
1 | xcode-select --install |
如果没有安装,会弹出对话框,点击安装.
如果已经安装,就会提示
1 | xcode-select: error: command line tools are already installed, use "Software Update" to install updates。 |
安装Fastlane
使用如下命令
1
sudo gem install fastlane
或是
1
brew cask install fastlane
安装完成后,可以执行下面命令,检查是否安装好。
1
fastlane --version
初始化Fastlane
cd到你的项目目录执行
1
fastlane init
过一会会出现如下提示,让你选择一个选项
我在这里选择4,4表示手动配置。
然后这时候会继续安装,安装成功之后,会出现Gemfile插件,并会在我们的工程目录生成一个fastlane文件夹:
此时,我们需要自己编辑Appfile
和Fastfile
两个文件
对于Appfile文件比较简单,这里只需要根据文件内容提示填写对应的bundle id 和appleid
主要的是fastlane文件,这个文件是自动化打包配置文件的关键,建议用Sublime工具打开
接下来我以打包ipa包到本地为例子
2.打包IPA包到本地
fastlane文件配置如下:
代码如下
1 | default_platform(:ios) |
保存文件,cd到当前工程目录下,执行打包命令
1 | fastlane 上面lane后面对应的名字 |
比如lane后的名字为TestBag
这里就是
1 | fastlane TestBag |
最终,在指定文件夹下得到了打包文件
3.打包IPA包到蒲公英
直接打包到蒲公英平台的话,我们需要在当前项目目录除了fastlane插件外,我们还需要安装蒲公英的插件
1 | fastlane add_plugin pgyer |
中间输入y,然后输入电脑密码即可安装
此时工程文件夹会多了一个Gemfile.lock文件
然后在fastlane文件文件配置中如下
新添加的代码如下
1 | puts "上传 ipa 包到蒲公英" |
上面的蒲公英相关key,在你自己蒲公英个人账号的信息里有。然后运行打包命令 fastlane xxxx ,你就会发现一两分钟后自动发布到蒲公英上去了,真是省力气啊!!妈妈再也不怕测试让我频繁打包了。
4.打包到App Store
首先我们要在开发者中心将新版本创建出来,然后本地的版本也对应上了,接着fastlane文件配置如下
在这里我们又添加了一个lane,因为是App Store的包,我在这里命名为AppstoreBag,具体代码如下:
1 | desc "以 app-store 方式打包并上传到 iTunes Connect" |
然后执行 fastlane AppstoreBag,即可自动打包,中途会让你输入对应的appid 和密码,过两三分钟后,便完成了打包上传iTunes store的操作。
这个时候你再去App Store connect中心,会发现
版本就正在处理, 之后的操作就和以前一样了,等一会就会有构建版本可以选择了
后面需要自己手动操作了。
另外如果是手动配置证书的话,lane代码如下
1 | #desc "enterprise 环境" |
上面codesigning_identity是你本地证书的名字,比如‘iPhone Distribution: xxxx Co.,Ltd.’
这样运行的时候,会提示报错
需要下载bundle,完成后再重新打包即可
好了,到此,通过fastlane自动化打包完成!