在iOS Fastlane自动化打包(1) 安装和打包IPA中,介绍了Fastlan
安装和基础的打包之后,下一步就是安装蒲公英插件上传蒲公英。
打开终端,cd进项目目录,输入fastlane add_plugin pgyer
,回车,等待安装完成。
编辑Fastfile
文件:
default_platform(:ios)
platform :ios do
desc "打包**版本"
lane :pkg do |options|
# 获取当前目录下的plist文件中的版本号
version = get_info_plist_value(path: "./RealEstateManagement/Info.plist", key: "CFBundleShortVersionString")
configuration = options[:to]
# 打包
gym(
# 打包的target名称
scheme:"RealEstateManagement",
# 打包方式 企业版
export_method:"enterprise",
output_directory:"/Users/Javen/Desktop/fastlane",
output_name:"RM_#{configuration}_#{version}_#{Time.now.strftime('%Y%m%d%H%M%S')}.ipa",
export_xcargs: "-allowProvisioningUpdates",
)
#上传蒲公英
if configuration == "test"
puts " \033[31m打包完成,正在上传测试蒲公英\033[0m\n"
pgyer(
api_key: "***",
user_key: "***"
)
puts "
**测试版 已发布!
版本号: #{version}
iOS: http://www.pgyer.com/***_TEST_IPA
Android: http://www.pgyer.com/***_TEST_APK"
end
if configuration == "release"
puts " \033[31m打包完成,正在上传正式蒲公英\033[0m\n"
pgyer(
api_key: "***",
user_key: "***"
)
puts "
**正式版 已发布!
版本号: #{version}
iOS: http://www.pgyer.com/*_IPA
Android: http://www.pgyer.com/*_APK"
end
end
end
核心调用蒲公英插件上传的代码就是这一行
pgyer(
api_key: "***",
user_key: "***"
)
我这里配置了个to
参数,用来区别测试版和正式版。
打包测试版并提交到蒲公英 fastlane ios pkg to:test
打包正式版并提交到蒲公英 fastlane ios pkg to:release
iOS Fastlane自动化打包(3) 打包结果推送通知到手机
iOS Fastlane配合Jenkins实现一键自动化打包