Fastlane自動打包工具build號自增處理配置方法

搶手的哥發表於2017-12-14

如題所示,本文講述build號具體的配置方法,也就是說在已經給工程配置好fastlane自動打包工具的前提下。 如果你尚未使用這個工具,可以點選一下幾篇文章學習如何使用: 【CI】持續整合-引導篇 【CI】持續整合-第一篇 fastlane 下面進入正題

step1 修改工程配置

修改buildsettings裡面的version配置,current project version 隨便填一個。versionsystem 選擇apple generic。

t1.jpeg
修改info.plist的路徑由絕對路徑變為相對路徑
t2.jpg

step2 配置fastfile

推薦用sublime text開啟fastfile,編輯器右下角選擇Ruby語言,方便編碼。 定義專門的函式處理

def updateProjectBuildNumber
 
currentTime = Time.new.strftime("%Y%m%d")
build = get_build_number()
if build.include?"#{currentTime}."
# => 為當天版本 計算迭代版本號
lastStr = build[build.length-2..build.length-1]
lastNum = lastStr.to_i
lastNum = lastNum + 1
lastStr = lastNum.to_s
if lastNum < 10
lastStr = lastStr.insert(0,"0")
end
build = "#{currentTime}.#{lastStr}"
else
# => 非當天版本 build 號重置
build = "#{currentTime}.01"
end
puts("*************| 更新build #{build} |*************")
# => 更改專案 build 號
increment_build_number(
build_number: "#{build}"
)
end
定義好updateProjectBuildNumber函式後,在自定義的每個lane方法中,呼叫一下即可。
eg:
lane :uat do
 
updateProjectBuildNumber  // 這裡呼叫
currentTime = Time.new.strftime("%Y-%m-%d-%H-%M")
ipaName = "UAT-#{currentTime}.ipa"
gym(
scheme: "XXX-UAT",
export_method:"ad-hoc",
archive_path:"./build/uat",
output_directory:"./build/uat",
output_name:ipaName
) # Build your app - more options available
#deliver(force: true)
pgyer(api_key: "xxxxx", user_key: "xxxxx")
# frameit
end
複製程式碼

配置完了 就可以本地打包自增build號了,當然,可以根據自己專案需求自定義build號的規則,百度一下Ruby語法即可。

相關文章