1. 创建env文件
- 使用.env配置方式
.env 这个文件的作用是作为环境变量的配置文件,在fastlane init进行初始化后并不会自动生成,如果需要可以自己创建。
执行时默认会读取 .env 和 .env.default 文件里的配置。通过执行 fastlane [lane-name] –env [envName] 来指定使用配置文件 .env.[envName] ,读取顺序是 .env -> .env.default -> .env. ,相同的变量名会被后面的覆盖。
如我建了文件.env.myDev,里面写了一些参数,那在执行的时候使用 fastlane [lane-name] –env myDev 即可,想在Appfile、Deliverfile、Fastfile等调用,直接使用 ENV[‘keyName’] 即可
- 打开终端
cd
到项目中的fastlane
文件夹- 输入
touch .env
(可以命名成不同的名称以便fastlane操作时区分) - 按下
enter
键,fastlane
文件夹下就会看到.env
文件 - 如果没有看到,因为
.env
文件默认是隐藏状态,终端输入defaults write com.apple.finder AppleShowAllFiles -boolean true ; killall Finder
就可以看到隐藏的文件了
2. 编辑ENV文件
使用任意一款文本编辑软件即可打开.env文件
WORKSPACE="demo.xcworkspace"
SCHEME="demo"
ACCOUNT="[email protected]"
...........
3. 引用env中的环境变量
# Appfile使用.env方式直接读取变量即可
app_identifier ENV['App_Identifier']
apple_id ENV['Apple_Id']
team_id ENV['Team_Id']
4. fastlane 调用env文件
fastlane 调用时,通过添加参数 --env 来指定待读取的 .env 文件
$ fastlane release --env targetA
$ fastlane release --env targerB
5. options参数传递
lane操作接收参数
如下一个定义的lane操作,options的参数key1和key2,从哪里来的?
platform :ios do
before_all do |lane, options|
#options参数
value = options[:key1]
value2 = options[:key2]
end
lane :beta do
...
end
end
fastlane 传递参数
上面options中的参数来源于,终端操作lane的传入的参数
# 使用key:value来传递一组对应的参数
fastlane beta key1:value key2:value2