1.安装fastlane,sudo gem install fastlane -NV,如果没有安装ruby环境,还要安装ruby环境,具体过程不再赘述
2.安装完成之后,在工程目录下使用命令行:fastlane init 进行初始化
3.初始化完成后,工程目录下回多出一个文件夹:fastlane
4.使用命令行安装fir插件和蒲公英插件:fastlane add_plugin firim / fastlane add_plugin firim pgyer
5.打开其中的fastfile文件,进行配置:
desc "正式环境测试版"
lane :formality_bate do |op|#op 可传入参数
increment_version_number(version_number: op[:vnum])#vnum 是参数名,命令行调用的时候输入的参数名,设置version版本
increment_build_number(build_number: op[:bnum])#设置build版本
set_info_plist_value(path: "./项目名称/.plist",#设置plist,此处传入plist路径,可以用来做环境配置
key: "isTest",
value: false)
gym(#打包
scheme: "项目名称",
export_method: "ad-hoc",#打包所选的种类(就是App Store,生产测试,企业,开发测试那四种), app-store,ad-hoc,enterprise,development
output_directory: "此处填写ipa存放路径",
output_name: "文件名.ipa",
export_xcargs: "-allowProvisioningUpdates"
)
firim(firim_api_token: "此处填写fir的用户token")#上传fir,如果是新项目,fir会自动创建
end
desc "测试环境测试版"
lane :test_bate do |op|
increment_version_number(version_number: op[:vnum])
increment_build_number(build_number: op[:bnum])
set_info_plist_value(path: "./项目名称/HostAddress.plist",
key: "isTest",
value: true)
gym(
scheme: "项目名称",
export_method: "ad-hoc",#打包所选的种类(就是App Store,生产测试,企业,开发测试那四种), app-store,ad-hoc,enterprise,development
output_directory: "此处填写ipa存放路径",
output_name: "文件名.ipa",
export_xcargs: "-allowProvisioningUpdates"
)
pgyer(api_key: "蒲公英账户下自行查看", user_key: "蒲公英账户下自行查看", update_description: op[:desc])#上传蒲公英,如果是新项目,蒲公英会自行创建,update_description:描述
end
desc "双打"#此lane 为将两个lane 封装,一次调用(不知道可不可以优化成同时调用,目前是串行队列,但是还要考虑打包的过程是否可以并发)
lane :all_bate do |op|
vnumber = op[:vnum]
bnumber = op[:bnum]
descstr = op[:desc]
formality_bate(vnum:vnumber, bnum:bnumber)
test_bate(vnum:vnumber, bnum:bnumber, desc:descstr)
end
6.填坑:
1)语法错误:lane名称后面的(,必须紧靠名称,参数名称后面的:,必须紧靠参数名 每个lane都以end 结尾
2)证书错误:查看自己的证书配置是否与export_method 匹配
3)报错如下时:说明设置工程build版本号失败,此时在工程的build setting中搜索current project version,并手动赋值,进行初始化,再重新调用打包命令就ok了。
4)因fastlane bundler版本问题导致error时,可以使用gem install bundler进行更新。
7.调用
1)命令行cd 到项目目录下(就是fastlane init的目录)
2)调用:fastlane all_bate vnum:9.9.9 bnum:99 desc:测试一下
3)等待完成吧~具体过程都有日志,可以查看每一步的完成情况,如果全都success的话,去网站查看二维码吧~ps:同一个二维码对应同一个安装包,但是链接只会连接到最新上传的安装包
8.相关链接:
1)https://github.com/fastlane/fastlane fastlane的github地址,1w8+的星,仰慕ing
2)https://docs.fastlane.tools fastlane语法,命令详细说明