一、Fastlane 环境搭建
1、ruby是否安装
rvm -v #检查ruby是否安装正常
rvm list #列出已知ruby版本
2、安装前确认已经下载了xcode
3、配置xcode证书和信息
4、安装fastlane
$ sudo gem install fastlane -NV
$ fastlane -v #检查版本 Fastlane
如果报错ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/commander或者ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /usr/bin directory.错误
image.png
那么执行sudo gem install -n /usr/local/bin fastlane
等待安装完成...
安装完毕后查看版本号
5、配置环境变量
找到shell profile,一般在 ~/.bashrc, ~/.bash_profile or ~/.zshrc文件里,取决于你的系统,文件的末尾处添加:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
二、对xcode项目进行fastlane初始化
1、fastlane init
终端,cd到你的工程目录,然后执行fastlane init
此时可能会出现
imageUnable to locate Xcode. Please make sure to have Xcode installed on your machine
报错提示
解决方案:打开xcode--偏好设置(快捷键:command+,)--Location--Command Line Tools设置上就好了
成功以后会提示你输入Apple ID 和密码(开启双重验证的,还要输入验证码) 如图:如果你是第一次上传app的话,会有这么个提示:
imagey/n后面输入
y
就会给你自动去ITC里面创建一个出来
完成之后,项目文件夹里边会生成一个fastlane文件夹
image
三、安装fastlane插件
安装下面三个插件
sudo gem install gym
sudo gem install fastlane-plugin-versioning #用来修改build版本号和version版本号
sudo gem install fastlane-plugin-firim ##直接把AdHoc或者InHouse打包的ipa上传到fir.im,供测试下载。
四、打包配置
打开Fastlane文件夹中的Fastfile文件,编辑实例如下:
default_platform(:ios)
platform :ios do
desc "archive ipa"
lane :archive do #执行命令打包时fastlane xxx 同这里一样
#打包的ipa存放路径
outputDir = "~/Desktop/ipa"
#打包的ipa名称
outputName = "XXX"
gym(
scheme: "XXX", #改为你项目的scheme
#workspace: "XXX.xcworkspace", #如果项目使用CocoaPods需要加上
configuration: "Release",
output_directory: outputDir,
output_name: outputName,
include_bitcode: false,
include_symbols: true,
codesigning_identity: ENV["CODESIGNING_IDENTITY_TO_FIRIM"],
silent: true,
export_options: {
method: "ad-hoc", #根据具体情况定
thinning: "<none>"
}
)
firim(firim_api_token: "XXXXXXXXXXXXXXXXXXXXX") #上传到firim
end
end
其中需要修改的为:
1、scheme修改为你项目自己的名称
2、如果你项目中使用了cocoapods,需要加上workspace
3.注册firim账号(过程略),复制firim的token,替换进来
添加好的情况如图:
五、打包
执行命令
fastlane archive
注意:
使用fastlane 自动打包出现:Unable to locate Xcode. Please make sure to have Xcode installed on your machine
解决办法:
在Xcode中没有设置“Command Line Tools”:打开Xcode偏好设置,选择"Location"选项卡,选择相应的“Command Line Tools”即可。比如:Xcode11
网友评论