自动化打包之fastlane--(1) 研究之必须提前了解的几点

自动化打包之fastlane–(1) 研究之必须提前了解的几点

自动化打包之fastlane–(2) fastlane init图文教程

自动化打包之fastlane–(3) 安装fir插件图文教程

自动化打包之fastlane–(4) 安装其他插件

自动化打包之fastlane–(5) 自动打包到蒲公英

自动化打包之fastlane–(6) ruby使用小结

自动化打包之fastlane–(7) 常用actons操作

自动化打包之fastlane–(8) 代码签名和项目配置

自动化打包之fastlane–(9) 常见错误

1. rvm

  • RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。
  • 就是方便管理Ruby的
  • 如何安装rvm
//亲测,这个命令是很好用的,可以很快安装rvm
curl -L https://get.rvm.io | bash -s stable
zhouyudeMacBook-Pro:~ zhouyu$ curl -L https://get.rvm.io | bash -s stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   194  100   194    0     0    203      0 --:--:-- --:--:-- --:--:--   202
100 24361  100 24361    0     0  16771      0  0:00:01  0:00:01 --:--:-- 16771
Downloading https://github.com/rvm/rvm/archive/1.29.3.tar.gz
Downloading https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc
Found PGP signature at: 'https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc',
but no GPG software exists to validate it, skipping.

Installing RVM to /Users/zhouyu/.rvm/
    Adding rvm PATH line to /Users/zhouyu/.profile /Users/zhouyu/.mkshrc /Users/zhouyu/.bashrc /Users/zhouyu/.zshrc.
    Adding rvm loading line to /Users/zhouyu/.profile /Users/zhouyu/.bash_profile /Users/zhouyu/.zlogin.
Installation of RVM in /Users/zhouyu/.rvm/ is almost complete:

  * To start using RVM you need to run `source /Users/zhouyu/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.
  • 切换到rvm环境
//安装不对时,不安装rvm下面两个路径找不到
source ~/.bashrc
source ~/.bash_profile
  • 设置环境变量,fastlane需要设置一些环境变量才能正确运行,如果当前的语言环境没有设置为UTF-8,会导致构建和上传的时候出现问题。
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
//查看rvm版本
rvm -v
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

如何删除rvm

终端中键入:

rvm  implode


删除命令最后的输出:表示成功了
为了保险起见还需要执行(自己的Users目录中删除)下面的命令

cd ~ ; sudo rm -rf .rvm .rvmrc   /etc/rvmrc ;gem uninstall rvm

关于ruby安装git(或别网站)的安装包的443port错误(用homebrew做事例)Failed to connect to raw.github.com port 443:

2. ruby

  • 是一门与perl,python类似的脚本语言,与rails框架结合起来用
  • fastlane是用Ruby语言编写的一套自动化工具集和框架,每一个工具实际都对应一个Ruby脚本,用来执行某一个特定的任务,而fastlane核心框架则允许使用者通过类似配置文件的形式,将不同的工具有机而灵活的结合在一起,从而形成一个个完整的自动化流程
  • mac电脑自带ruby,也可以自己安装

Ruby China 的网站链接

查看ruby的版本

rvm list known
zhouyudeMacBook-Pro:~ zhouyu$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head

# for forks use: rvm install ruby-head-<name> --url https://github.com/github/ruby.git --branch 2.2

# JRuby
jruby-1.6[.8]
jruby-1.7[.27]
jruby[-9.1.13.0]
jruby-head

# Rubinius
rbx-1[.4.3]
rbx-2.3[.0]
rbx-2.4[.1]
rbx-2[.5.8]
rbx-3[.84]
rbx-head

# Opal
opal

# Minimalistic ruby implementation - ISO 30170:2012
mruby-1.0.0
mruby-1.1.0
mruby-1.2.0
mruby-1[.3.0]
mruby[-head]

# Ruby Enterprise Edition
ree-1.8.6
ree[-1.8.7][-2012.02]

# Topaz
topaz

# MagLev
maglev[-head]
maglev-1.0.0

# Mac OS X Snow Leopard Or Newer
macruby-0.10
macruby-0.11
macruby[-0.12]
macruby-nightly
macruby-head

# IronRuby
ironruby[-1.1.3]
ironruby-head
  • ruby控制的fastlane
#发布到AppStore

lane :release do
  #增加build版本号,需要先配置build setting
  increment_build_number
  #pod资源更新
  cocoapods
  #打包
  gym
  #发布到AppStore
  deliver(force: true)
  #发布testflight测试
  testflight
end

3. gem

  • Mac 自带 gem
  • ruby 是一种语言,是某些软件包代码的执行环境。而gem是管理这些基于ruby程序的程序。
  • gem的安装与使用
  • gem源安装被墙,常见的gem源
http://gems.github.com/ 
http://rubygems.org/ 
https://ruby.taobao.org/
https://gems.ruby-china.org
  • gem是Ruby环境中的包管理器,好比于Python中的pip与JavaScript本地Node.js的npm,非常有名和强大,
  • gem就是ruby的软件包. 一个gem就是一个ruby软件.
  • Gem是封装起来的Ruby应用程序或代码库。

4. brew

  • Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件,可以说Homebrew就是mac下的apt-get、yum神器
brew update          # 更新 Homebrew 的信息
brew outdated        # 看一下哪些软件可以升级
brew upgrade <xxx>   # 如果不是所有的都要升级,那就这样升级指定的

brew upgrade; brew cleanup    # 如果都要升级,直接升级完然后清理干净

5. bundler

  • 使用bundler管理多版本的Gem,有了rvm来管理多版本的ruby环境,我们还需要一个能管理多版本gem(比如rails)的工具,那就是bundler了,
  • 那么bundle install和gem install的区别是什么呢? 我的理解是: bundle是用来管理维护项目的软件包的; gem则是用来管理具体的每一个软件包的.
  • 项目的根目录会有一个Gemfile, 里面定义了该项目的软件包依赖的相关事项. 发现它默认是从rubygems.org这个网站获取内容的. 我想把源换成taobao.org. 可以修改Gemfile文件. 把source那一行改成: source ‘http://ruby.taobao.org/

  • Gemfile文件中的 gem ‘fastlane’,就类似于Podfile文件中的 pod ‘AFNetworking’

  • bundle install执行完之后, 会把当前的软件包环境做一个快照, 放到Gemfile.lock文件中.
  • bundle exec [command] 表示使用Gemfile中的指定的软件来执行command.
  • 相等于多个RubyGems批处理运行。在配置文件gemfile里说明你的应用依赖哪些第三方包,他自动帮你
  • 下载安装多个包,并且会下载这些包依赖的包。

安装

gem install bundler
//如果提示没有权限,就用下线这个,需要输入电脑密码
sudo gem install bundler

简单地来说,就是rvm管理ruby,ruby管理gem,bundle管理gem

6. fastlane

首先要安装xcode-select

xcode-select --install

这里写图片描述

  • fastlane是用Ruby语言编写的一套自动化工具集和框架,每一个工具实际都对应一个Ruby脚本,用来执行某一个特定的任务,而fastlane核心框架则允许使用者通过类似配置文件的形式,将不同的工具有机而灵活的结合在一起,从而形成一个个完整的自动化流程。
sudo gem install fastlane --verbose

7. Gemfile

  • 定义你的应用依赖哪些第三方包,bundle根据该配置去寻找这些包。

8. match

  • match 是 fastlane 的一个功能组件, 采取了集中化方式来管理证书和 profile, 新建一个私有远程 git 库用来保存证书和 profile, 一个 team 的开发者共用同一套证书, 方便了管理和配置, 同时 match 在证书过期时还会自动从苹果官网下载新的证书并 push 到私有的 git 库中, 保证证书同步,

  • 安装match

  • 安装成功以后会提示使用fastlane match代替match

//安装成功以后会提示使用fastlane match代替match
sudo gem install match

这里写图片描述

9. deliver

//安装
sudo gem install deliver

上传屏幕截图,元数据,和APP到AppStore

10. Jenkin

用于集成fastlane,形成可视化打包界面,一键打包

猜你喜欢

转载自blog.csdn.net/kuangdacaikuang/article/details/80443515