如题所示,本文讲述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