fastlane简单使用

1、安装

Ruby 2.0.0及以上版本
(1)使用 gem 安装 fastlane

sudo gem install fastlane

(2)直接下载安装:(https://github.com/fastlane/fastlane)

fastlane简单使用_第1张图片
image.png

(3)确保 Xcode 命令行工具已安装:

xcode-select --install

2、基本使用

(1)cd到工程所在的文件
(2)输入命令

fastlane init

期间会要求输入app 的id、密码、bundle identifier等(如果在多个team会让选择哪个team)。
完成后会增加一个fastlane文件夹,里面有两个文件Appfile、Fastfile。
(3)修改Fastfile,使用相关命令。

3、使用场景举例

要求,按规定方式命名并把ipa和dSYM文件放到指定位置。
fastlane文件如下:

lane :dev_ipa do
    cocoapods
    increment_build_number
    increment_version_number
    build_number = get_build_number(xcodeproj: "appName.xcodeproj")
    version = get_version_number(xcodeproj: "appName.xcodeproj")
    time = Time.new
    time_str = time.strftime("%Y%m%d")
    current_path = File.expand_path("..")
    out_put_path = current_path + time.strftime("%Y%m%d%H%M")
    gym(
      workspace: "appName.xcworkspace",
      scheme: "appName",
      clean: true,
      output_directory: out_put_path,
      output_name: "appName" + "-" + time.strftime("%Y%m%d") + "-" + version + "-v" + build_number + "-dev",
      configuration: "Debug",
      silent: true,
      include_symbols: true,
      include_bitcode: true,
      export_method: "enterprise",
      use_legacy_build_api: true,
      increment_version_number,
    )
  end

4、命令的一些说明

workspace:"appName.xcworkspace”,#指定.xcworkspace文件的路径。

scheme:"appName",#指定项目的scheme名称,如果不设置会在终端里提醒设置

clean:true,#在打包前是否先执行clean。

output_directory:"path/to/dir",#指定.ipa文件的输出目录,默认为当前文件夹。

output_name:"appName",#指定生成的.ipa文件的名称,应包含文件扩展名。

configuration:"Debug",#指定打包时的配置项,默认为Release。证书要在Xcode里面配置好,关于配置证书请参考(https://docs.fastlane.tools/codesigning/xcode-project/)
silent:true,#是否隐藏打包时不需要的信息。

include_symbols:true, #是否生成符号表,默认true

include_bitcode:true,#是否开启bitcode,默认true

export_method:"ad-hoc",#指定导出.ipa时使用的方法,可用选项:app-store, ad-hoc, package, enterprise, development, developer-id。默认:app-store。只有在证书完全匹配成功的情况下才能打出想要的包,一定要保证工程设置正确。

其它常用命令

获取build:build_number = get_build_number(xcodeproj: "appName.xcodeproj")

获取version:version = get_version_number(xcodeproj: "appName.xcodeproj")

获取当前文件的位置:current_path = File.expand_path("..")

获取时间:time = Time.new ,time_str = time.strftime("%Y%m%d")

如果打包失败添加:use_legacy_build_api: true,试一试。

版本号自动增加:increment_version_number,

build自动增加:increment_build_number
注:自动增加版本号需要配置,具体配置请参考官方文档或使用fastlane自动增加版本号

你可能感兴趣的:(fastlane简单使用)