1. 程式人生 > >iOS 使用 fastlane + fir 自動打包上傳到 fir

iOS 使用 fastlane + fir 自動打包上傳到 fir

什麼是 fastlane?

 fastlane官網地址

fastlane是一套使用Ruby寫的自動化工具集,旨在簡化Android和iOS的部署過程,自動化你的工作流。它可以簡化一些乏味、單調、重複的工作,像截圖、程式碼簽名以及釋出App.

如何安裝 fastlane?

fastlane 官方安裝步驟

簡單安裝步驟

1、安裝 xcode 命令工具

xcode-select --install

2、安裝 fastlane

方式1、使用 gem 安裝 
sudo gem install fastlane -NV 
方式2、使用 brew 安裝 
brew cask install fastlane 

什麼是 fir?

fir 官網

fir.im 是一款免費應用內測託管平臺,在專案內測時可以,iOS、Android 專案可以託管在此平臺上,方便測試人員在此平臺上直接掃碼下載測試

fastlane+fir 進行iOS自動打包上傳到 fir

#!/bin/bash

#設定超時
export FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT=120
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

#計時
SECONDS=0

#假設指令碼放置在與專案相同的路徑下
project_path=$(pwd)
#取當前時間字串新增到檔案結尾
now=$(date +"%Y_%m_%d_%H_%M_%S")

#指定專案的名稱
projectName="QYXBPocket"
#指定專案的scheme名稱
scheme="QYXBPocket"
#指定要打包的配置名
configuration="development"
#指定打包所使用的輸出方式,目前支援app-store, package, ad-hoc, enterprise, development, 和developer-id,即xcodebuild的method引數
export_method='development'
#指定上傳 fir 的 token
firToken="4e22020c3c960440b5f2595e6f863021"


#指定專案地址
workspace_path="$project_path/${projectName}.xcworkspace"
#指定輸出路徑
output_path="$project_path/IPA/${projectName}_${now}"
#指定輸出歸檔檔案地址
archive_path="$output_path/${projectName}_${now}.xcarchive"
#指定輸出ipa地址
ipa_path="$output_path/${projectName}_${now}.ipa"
#指定輸出ipa名稱
ipa_name="${projectName}_${now}.ipa"
#獲取執行命令時的commit message
commit_msg="$1"

#輸出設定的變數值
echo "===workspace path: ${workspace_path}==="
echo "===archive path: ${archive_path}==="
echo "===ipa path: ${ipa_path}==="
echo "===export method: ${export_method}==="
echo "===commit msg: $1==="

#先清空前一次build
fastlane gym --workspace ${workspace_path} --scheme ${scheme} --clean --configuration ${configuration} --archive_path ${archive_path} --export_method ${export_method} --output_directory ${output_path} --output_name ${ipa_name}

#上傳到fir
fir publish ${ipa_path} -T "${firToken}" -c "${commit_msg}"

#輸出總用時
echo "===Finished. Total time: ${SECONDS}s==="