Fastlane自动打包并上传到蒲公英

2,563 阅读2分钟

Fastlane自动打包并上传到蒲公英

1.Fastlane安装

1.1 确保你的电脑上已安装最新版本的Xcode命令行工具(Xcode command line tools) ------最好执行下面的命令看一下

xcode-select --install

如果没有安装,会弹出对话框,点击安装。如果提示xcode-select: error: command line tools are already installed, use "Software Update" to install updates表示已经安装

1.2 安装Fastlane gem或者brew

#gem
gem install fastlane -NV
#brew
gem install fastlane -NV

如果提示 permission denied 表示权限不足, 1.2中的命令行前添加sudo.

1.3 检查是否安装正确

 #执行命令
 fastlane --version
 #安装正确的信息大致如下

F5AF875492083B27B61CB097F9A7C687.png

2. Fastlane配置

2.1 项目设置

cd 到项目路径下,执行命令

fastlane init
#如下图
#1. 自动截屏。
#2. 自动发布beta版本用于TestFlight
#3. 自动的App Store发布包。
#4. 手动设置。

C5B4F8AE94B839BBE319253BB2F93114.png

因为我们的是企业用户,所以选择4,等待一段时间后,配置完成。

AA7D92CFB4AED17D3DABBF220318ED03.png

3.蒲公英插件下载以及执行上传操作

3.1 插件安装(官网

cd 到项目路径下,执行命令如下

fastlane add_plugin pgyer

FEB94C3BD1B55177750FD6171E16DA6B.png

安装成功后终端显示如下,同时打开我们的工程可以发现新增加了一个名为「fastlane」的文件夹。

517AF17372FB3B14FC0DEC1F59D1794E.png

3.2 Fastfile编辑

官网Fastfile介绍Fastfile:存储了运行自动化配置的一个流程。

编辑Fastfile

# This file contains the fastlane.tools configuration
#fastlane 版本号
fastlane_version "2.142.0"
#定义打包平台
default_platform :iOS
currentTime = Time.new.strftime("%Y%m%d%s")
#指定项目的scheme的名称
scheme = "UClean"
#蒲公英api_key和user_key
api_key="fdfb438d0e2747e939ff1f683b789df5"
user_key="adbe276df93dc78e885b7ef49e580ba8"
configuration="Debug"
platform :iOS do
  desc "测试fastlane自动打包上传"
  lane :test_pgy do #打包方法
    gym(
	scheme:"UCLean", #项目名称
	output_directory: "/Users/liguicheng/Desktop", # 打包后的 ipa 文件存放的目录
	configuration:"#{configuration}",
	output_name: "#{scheme}_#{configuration}_#{currentTime}",  # ipa文件名

	# 指定打包所使用的输出方式:app-store、ad-hoc、enterprise、development
	export_method: "ad-hoc",
	# 自动管理证书的时候,Xcode 9及以上没有权限获取钥匙串里面的证书,必须加上这个才能打包成功
    	export_xcargs: "-allowProvisioningUpdates"
	)
puts "开始上传蒲公英"
pgyer(api_key: "#{api_key}", user_key: "#{user_key}")
  end
end

上面的需要注意的就是 1)fastlane的版本号必须要同自身安装的版本相同。2)api_key和user_key是在蒲公英创建应用生成的,在其管理页面可以找到3)export_method需要选择为ad-hoc(企业证书)4)电脑自身工程的证书以及描述文件必须确保在正常状态下。

3.3 执行上传操作

终端执行

fastlane test_pgy

等待一段时间后,如下图表示上传成功

B7EE7247DAE208EE61391B88F21D7A74.png

4 错误处理

在执行自动打包的过程中不可避免会遇到一些错误,必须版本不匹配:工程版本为swift5.x,而插件版本过低等,在执行此命令的过程中,如果出现错误那么会有相应的错误描述,可以根据具体的错误做出修改。