fastlane build 版本号自增

前言

有时候一天需要打好几个包,为了区分,我这里实现一个递增 build 号的功能。

1. 配置Xcode 项目工程

修改 Build Settings 中的 Versioning 配置 ,Versioning System 选择 Apple Generic。
在这里插入图片描述

2. 编辑 Fastfile 文件

2.1 定义一个递增 build 号的函数,添加到 Fastfile 中

build 自增函数

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 

Fastfile整体内容

# 定义打包平台
default_platform(:ios)
 
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 

# 任务脚本
platform :ios do
  desc "Description of what the lane does"
  # 打包时候用的名称   例如 fastlane app
  lane :app do
    #更改项目build号
    updateProjectBuildNumber
    
    gym(
    # 每次打包之前clean一下
    clean: true,
    # 打包出 ipa 文件的路径,我放到了桌面文件夹,你自行更改文件夹
    output_directory: '/Users/hengqianjin/Desktop/App',
    # 打包的名称,可任意取
    output_name: 'app.ipa',
    # 项目的 scheme,自己项目名   .xcworkspace 前面的项目名就是
    scheme: 'Farm',
    # 默认 Release,Release or Debug
    configuration: 'Debug',
    # 是否包含 bitcode
    include_bitcode: false,
    # 是否包含 symbols
    include_symbols: true,
    # 打包导出方式,包含 app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
    export_method: 'development',
    # 这个设置是为了设置 xcode 自动配置证书和配置文件,当然也可以手动配置,可以参考文档
    export_xcargs: '-allowProvisioningUpdates'
    )
    #配置上传蒲公英账号  蒲公英的 api_key和 user_key  用自己蒲公英账号的,别用我的!!!如果没有可删除
    pgyer(api_key:'fbf25d2a525e12d5084b0ae09098ab7b', user_key: '12bba6204bd7c3e26375f653f8086358', update_description: "测试fastlane自动打包")
    # mac上的通知弹窗,通知打包完毕
    notification(app_icon: "./fastlane/icon.png", title: "打包成功提示", subtitle: "打包成功,已导出安装包", message: "准备发布到蒲公英中……")
  end
end

3、运行fastlane 之后

在这里插入图片描述
在这里插入图片描述

当然,里面的build 格式你可以自行调整

最后: 我只是把别人文章的部分内容摘抄出来而已, 以方便自己查看使用,以及理解
参考文章
iOS 自动化打包发布(Jenkins + Fastlane + GitLab + 蒲公英)

猜你喜欢

转载自blog.csdn.net/u014651417/article/details/124981377