一、Fastlane
Fastlane是一套用Ruby写的自动化工具集,可用于iOS和Android的打包、发布,节省了大量时间。这套工具是麻省理工学院批准的开源项目。
二、配置各项环境
1)因mac系统下默认安装了Ruby,可以使用命令Ruby -v 来查看ruby版本。
2)检测是否安装了Xcode命令行工具,在终端输入 :xcode-select --install。。若已经安装了该命令行工具 终端会显示如 图一
3)安装fastlane 终端输入命令行: sudo gem install fastlane 静静的等会,坐个美男子。
4)安装fastlane 成功后,进入到工程目录(在含xxx.xcodeproj该目录下),然后 使用命令行 :fastlane init 期间会让你输入你的AppID 和一些确认信息,一系列工作完成后,在你的工程目录下 会看到如图二
其中Appfile是一些相关账号信息,比如你的app_identifier,apple_id和team_id。其格式如下:
app_identifier"com.xxx.xxx"# app的bundle identifier
apple_id"xxx@xxx.com"# 你的Apple ID
team_id"XXXXXXXXXX"# Team ID
你也可以针对不同的lane(即每一个打包任务:测试包,正式环境包等)填写appfile
app_identifier"com.Joshua.123"
apple_id"123@163.com"
team_id"2333333"
for_lane :Joshua do
app_identifier"com.5423.2323"
apple_id"111@bbb.com"
team_id"CCCCCC"
end
fastfile文件是最主要的文件,打开后里面的东西 你完全可以删掉,然后自己写脚本。
如图三
然后直接就可以 在终端输入命令 fastlane release 1.2.4(版本号),一个lane就是一个任务,我们也可以定制一个自己的lane
desc"企业版"
lane :Joshua do
gym(scheme:"XXX",
export_method:"enterprise",
output_directory"./build", # 打包后的 ipa 文件存放的目录
output_name"XXX" # ipa 文件名
)
end
利用目前支持的工具可以做所有包含自动化和可持续化构建的每个环节,例如:
scan自动化测试工具,很好的封装了 Unit Test
sigh针对于 iOS 项目开发证书和 Provision file 的下载工具
match同步团队每个人的证书和 Provision file 的超赞工具
gym针对于 iOS 编译打包生成 ipa 文件
deliver用于上传应用的二进制代码,应用截屏和元数据到 App Store
snapshot可以自动化iOS应用在每个设备上的本地化截屏过程
三。目前只是利用fastlane进行了简单的打包,还有很多功能待我们去学习。