php执行fastlane,fastlane教程

Fastlane是一套使用Ruby写的自动化工具集,旨在简化Android和iOS的部署过程,自动化你的工作流。它可以简化一些乏味、单调、重复的工作,像截图、代码签名以及发布App。它可以使用集成好的action,也可以自定义action(比如封装一些git语句或者shell)

如何安装?

# 删除默认的gem源

gem sources --remove https://rubygems.org

# 增加ruby-china作为gem源

gem source -a https://gems.ruby-china.com

# 清空源缓存

gem sources -c

# 更新源缓存

gem sources -u

# 安装fastlane

sudo gem install fastlane --verbose

如何使用?

cd到你的项目目录执行fastlane init

ff02c3ef5bec?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

选择你想要创建的类型

选择4手动配置

然后一直卡在bundle update,解决办法为:

Fastfile可以使用shell,比如:

lane :custom_lane do

sh("rm /Users/hy/Desktop/test.h") //shell命令删除test.h

end

文件系统:

初始化成功后会在当前工程目录生成一个fastlane文件夹,文件目录为下。

ff02c3ef5bec?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

fastlane

Appfile,用于存放app ID和开发者的Apple ID

Fastfile,用于管理创建的lane,lane则可以调用各个action(即fastlane的工具链)

Snapfile,用于指定需要进行屏幕截图的设备类型(根据选项生成,可自己创建文件用于配置)

Deliverfile,用于配置发布至appStore的文件(根据选项生成,可自己创建文件用于配置)

lane的使用:

lane是fastfile中的方法定义标签,可以理解为swift中定义一个函数,前面的 func。fastlane 都是基于ruby,所以fastfile中也是使用ruby语法的。

定义一个简单的无参lane:

lane : package

puts"这是一个lane"

end

定义一个带参的lane,在fastfile中option类似于一个字典集。我们可以通过 option[:configuration] 取其中value

lane : package do |option|

configuration = option[:configuration]

puts configuration

end

//lane的调用

package(configuration:'Release', export_method:'ad-hoc')

常用命令:

fastlane actions: 展示所有有效action列表

fastlane action [action_name]: 展示一个action的详细说明,使用方法等

fastlane lanes: 展示fastfile中的所有lane

fastlane list: 展示fastfile中的所有的有效的lane

fastlane new_action: 创建一个新的action

fastlane env: 打印fastlane、ruby环境,一般提bug到issue的时候会要求提供

生命周期:

执行顺序方法名说明

1.before_all在执行 lane 之前只执行一次

2.before_each每次执行 lane 之前都会执行一次

3.lane自定义的任务

4.after_each每次执行 lane 之后都会执行一次

5.after_all在执行 lane 成功结束之后执行一次

6.error在执行上述情况任意环境报错都会中止并执行一次

Action:

除开我们自定义fastfile中的方法,fastlane还提供了很多已经写好的独立的方法库,也就是Actions。

常用Action

Action列表文档: Actions

我们常用的主要包括下面几部分,其他action的使用可以参考官方文档:

scan=> 自动运行测试工具,并且可以生成漂亮的HTML报告

match=> 一个新的证书和配置文件管理工具。把所有需要用到的证书传到git私有库上,任何需要配置的机器直接用match同步回来就不用管证书问题了

gym=> Fastlane家族的自动化编译工具,和其他工具配合的非常默契

deliver=> 自动上传截图,APP的元数据,二进制(ipa)文件到iTunes Connect

pilot=> 管理TestFlight的测试用户,上传二进制文件

spaceship=> 为pilot,boarding和deliver等工具提供和 iTC 和 ADC 的交互API。spaceship本来是个独立的项目,后来被Fastlane收编进来非官方的iTunes Connect JSON API的文档

打测试包:

gym:

常用参数:scheme :指定打的哪个scheme

project :指定project (未使用cocopods)

workspace :指定workspace (使用cocopods)

clean :打包前clean

xcargs : 附加一些参数传递给xcodebuild 如: xcargs:'DEBUG_INFORMATION_FORMAT="dwarf-with-dsym"',

export_method :出包方法 app-store, ad-hoc,package, enterprise, development

configuration : 指定构建App的配置 Release、Debug、自定义output_directory : 输出目录

output_name :输出名称

include_symbols :是否包含调试符号

include_bitcode :是否开启bitcode

纯swift工程打包,在非appstore证书下签出来的包都缺少一个swiftsupport文件夹,里面放的是swift的支持库。

在Fastfile中新建一个lan

lane :beta do

# 调用 gym 打测试包

gym(

configuration:"Debug",

export_method:"development"

)

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值