如題所示,本文講述build號具體的配置方法,也就是說在已經給工程配置好fastlane自動打包工具的前提下。
下面進入正題
step1 修改工程配置
修改buildsettings里面的version配置,current project version 隨便填一個。versionsystem 選擇apple generic。
修改info.plist的路徑由絕對路徑變為相對路徑
step2 配置fastfile
推薦用sublime text打開fastfile,編輯器右下角選擇Ruby語言,方便編碼。
定義專門的函數處理
defupdateProjectBuildNumber
currentTime =Time.new.strftime("%Y%m%d")
build = get_build_number()
ifbuild.include?"#{currentTime}."
# => 為當天版本 計算迭代版本號
lastStr = build[build.length-2..build.length-1]
lastNum = lastStr.to_i
lastNum = lastNum +1
lastStr = lastNum.to_s
iflastNum <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:"ShunWei-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:"", user_key:"")
# frameit
end