+-
iOS Fastlane
首页 专栏 ios 文章详情
0

iOS Fastlane

善斋书屋 发布于 3 月 3 日
问题

天天打包,即便面对的是肤白貌美小姐姐,终有安装识别别烦我的苦恼以及事到一半打个包的郁闷,

咋整?

Fastlane吧!

思路

1.xcode-select安装,确定安装了最新版本

xcode-select --install

2.安装fastlane, 单独安装,去掉sudo; 使用系统自带的ruby,需要sudo权限

sudo gem install fastlane

3.项目根目录,初始化fastlane

fastlane init  // 命令行

// 执行结果
What would you like to use fastlane for?
1. 📸  Automate screenshots
2. 👩‍✈️  Automate beta distribution to TestFlight
3. 🚀  Automate App Store distribution
4. 🛠  Manual setup - manually setup your project to automate your tasks
?  4

4.配置下Fastfile文件

default_platform(:ios)
platform :ios do 
  lane :beta_release do |options|
    # 版本号设置
    increment_build_number(
      build_number: options[:buildnumber]
      )
    # 打包ipa文件
    buildapp(
      workspace: "xxx.xcworkspace",
      configuration: "Release",
      scheme: "xxx",
      export_method: "ad-hoc",
      output_name: "xxx.ipa"
      )
    
    # 上传到蒲公英
    pgyer(api_key: "xxx", user_key: "xxx", update_description: options[:message])
  end

  desc "build app"
  private_lane :buildapp do |options|
    gym(
      workspace: options[:workspace],
      configuration: options[:configuration],
      scheme: options[:scheme],
      clean: true,
      export_method: options[:export_method],
      output_directory: "./fastlane/package/",
      output_name: options[:output_name],
      sdk: "iphoneos"
      )
  end 
end

5.控制Version版本号设置自增

Versioning System 设置为Apple Generic

6.添加pgyer插件,可上传到蒲公英

sudo fastlane add_plugin pgyer

7.调用方式

/usr/local/bin/fastlane beta_us_release message:"打包啦" buildnumber:101

结语

工程中的Pod执行,可放在lane中执行,或脚本执行,各凭喜好不细说,

可能问题:

1.出错fastlane_xcode_build_settings_timeout

命令行中运行如下来更新timeout时间

export FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT=120

2.Fastlane bundle update执行卡住

检查ruby源
gem source -l

替换源
gem source --add https://gems.ruby-china.com/ --remove https://rubygems.org/

替换Gemfile文件
source "https://rubygems.org" 替换成  source "https://gems-china.org"

删除fastlane文件夹,打开终端,cd到工程目录下,再次执行fastlane init

3.invalid byte sequence in US_ACSII错误

解决方法:
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en.us.UTF-8
ios fastlane
阅读 35 发布于 3 月 3 日
收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
avatar
善斋书屋
1 声望
0 粉丝
关注作者
0 条评论
得票 时间
提交评论
avatar
善斋书屋
1 声望
0 粉丝
关注作者
宣传栏
目录
问题

天天打包,即便面对的是肤白貌美小姐姐,终有安装识别别烦我的苦恼以及事到一半打个包的郁闷,

咋整?

Fastlane吧!

思路

1.xcode-select安装,确定安装了最新版本

xcode-select --install

2.安装fastlane, 单独安装,去掉sudo; 使用系统自带的ruby,需要sudo权限

sudo gem install fastlane

3.项目根目录,初始化fastlane

fastlane init  // 命令行

// 执行结果
What would you like to use fastlane for?
1. 📸  Automate screenshots
2. 👩‍✈️  Automate beta distribution to TestFlight
3. 🚀  Automate App Store distribution
4. 🛠  Manual setup - manually setup your project to automate your tasks
?  4

4.配置下Fastfile文件

default_platform(:ios)
platform :ios do 
  lane :beta_release do |options|
    # 版本号设置
    increment_build_number(
      build_number: options[:buildnumber]
      )
    # 打包ipa文件
    buildapp(
      workspace: "xxx.xcworkspace",
      configuration: "Release",
      scheme: "xxx",
      export_method: "ad-hoc",
      output_name: "xxx.ipa"
      )
    
    # 上传到蒲公英
    pgyer(api_key: "xxx", user_key: "xxx", update_description: options[:message])
  end

  desc "build app"
  private_lane :buildapp do |options|
    gym(
      workspace: options[:workspace],
      configuration: options[:configuration],
      scheme: options[:scheme],
      clean: true,
      export_method: options[:export_method],
      output_directory: "./fastlane/package/",
      output_name: options[:output_name],
      sdk: "iphoneos"
      )
  end 
end

5.控制Version版本号设置自增

Versioning System 设置为Apple Generic

6.添加pgyer插件,可上传到蒲公英

sudo fastlane add_plugin pgyer

7.调用方式

/usr/local/bin/fastlane beta_us_release message:"打包啦" buildnumber:101

结语

工程中的Pod执行,可放在lane中执行,或脚本执行,各凭喜好不细说,

可能问题:

1.出错fastlane_xcode_build_settings_timeout

命令行中运行如下来更新timeout时间

export FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT=120

2.Fastlane bundle update执行卡住

检查ruby源
gem source -l

替换源
gem source --add https://gems.ruby-china.com/ --remove https://rubygems.org/

替换Gemfile文件
source "https://rubygems.org" 替换成  source "https://gems-china.org"

删除fastlane文件夹,打开终端,cd到工程目录下,再次执行fastlane init

3.invalid byte sequence in US_ACSII错误

解决方法:
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en.us.UTF-8