RVM安装、自动化打包Fastlane安装,iOS企业级自动化打包

安装Fastlane 环境

  fastlane的git https://github.com/fastlane

  fastlane相关文档 https://docs.fastlane.tools

  本机环境如下图:

  

  所使用的是Xcode9;

一、首先需要安装rvm

  RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。

  1 、安装命令

    $ curl -L get.rvm.io | bash -s stable

    结果:

    

  2、指定源

    $ source ~/.rvm/scripts/rvm

  3、检查一下是否安装正确,正确会显示版本号,如下图的1.29.3版本

     $ rvm -v

       

  4、用 RVM 安装 Ruby 环境

  (1)列出已知的ruby版本
     $ rvm list known
      
   (2)可以选择现有的rvm版本来进行安装(下面以rvm 2.3.0版本的安装为例)建议2.3.0及以上版本,2.0.0版本安装fastlane中会出现问题,等待下载。  
   $ rvm install 2.3.0  
 可能遇到的问题:如下图所示,提示Error running‘xxx’,并提示查看log文件,这里查询文件提示错误是brew 出错。
  
  解决方法:
  $ brew update
  更新的时候可能提示Error:/usr/local must be writable!
   
  这里需要先更改可写权限:
  $sudo chown -R 当前Mac登录的用户名 /usr/local
  例如:$sudo chown -R Datacvg /usr/local
  再执行:$ brew update
  成功后再执行$ rvm install 2.3.0
  结果:
  
   (3)查询已经安装的ruby,这里我只安装了2.3.0版本
  $ rvm list
  

   (4)卸载一个已安装版本 

       $ rvm remove 1.9.2

  5、设置 Ruby 版本

  (1)RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本,如果只有一个版本就不用设置默认了
    $ rvm 2.3.0 --default
  (2)测试ruby版本是否正确
    $ ruby -v
  
  (3)查看gem版本
    $ gem -v
  

  6、更换源

 这有可能是因为Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的,替换方式如下:
 $ gem source -r https://rubygems.org/
 $ gem source -a https://ruby.taobao.org
  要想验证是否替换成功了,可以执行:
 $ gem sources -l  
 正常的输出结果:
 
 到这里就已经把Ruby环境成功的安装到了Mac OS X上。

二、fastlane安装

  1、确保你的Xcode命令行工具的最新版本安装:

命令:xcode-select --install
如果已经安装会有提示已经安装:

2、安装fastlane

https://docs.fastlane.tools
官方提供了三种安装方式:
 
第一种:通过Homebrew,如果fastlane与jenkins结合使用可以使用brew安装,先安装homebrew,在安装fastlane,然安装jenkins,fastlane与jenkins结合使用
第二种:下载fastlane包,运行包里面install进行安装,执行install的时候会被阻止,需要在安全性与隐私设置,还有一个问题下载的包可能不是最新版,在使用的时候提示要更新,这里更新没有成功,所以不建议使用。
第三种:本文使用的方法,安装ruby之后,在命令行输入:
sudo gem install fastlane -NV
即可安装,安装完成后执行:
fastlane -v
可查询当前安装版本:

 三、项目使用fastlane

1、在终端打开你的iOS项目文件.xcodeproj所在的文件夹
  cd xxx
  执行fastlane初始化,命令:
  fastlane init
  会出现一下提示:想要做什么?因为要打包企业级项目所以这里选择4, 如果选择3,需要输入Apple ID等相关信息,如果ID是企业级账号会提示init 失败。
  
 
  选择4之后,会提示回车继续,完成之后项目文件夹中会多出一个fastlane文件夹,文件中包含Appfile,Fastfile两个文件
  分别对两个文件的内容设置:
  
  Appfile:主要是app_identifier和apple_id
  
  
  Fastfile:
  
 
  都配置完成之后,在终端输入
  fastlane ios enterprise 
  执行开始打包,这里ios enterprise 是lane的Name,如果执行错误,会有提示.
  如果执行后提示gym命令相关的错误

fastlane gym produces error: method `to_plist' not defined in Array #11503

  可以参考:

https://github.com/fastlane/fastlane/issues/11503

方法终端命令:

1、rvm @global do uninstall fastlane

2、gem install fastlane

3、rvm @global do gem install fastlane

4、rvm @global do fastlane action gym

5、rvm @global do gem uninstall fastlane 

  rvm all do gem uninstall fastlane

  gem uninstall fastlane

6、gem install fastlane

  之后在打包的时候就可以了,不知道原理:
  
 

四、遇到的错误

fastlane init
报错 Unable to locate Xcode. Please make sure to have Xcode installed on your machine
 
可能在Xcode中没有设置“Command Line Tools”:打开Xcode偏好设置,选择"Location"选项卡,选择相应的“Command Line Tools”即可。
 
     
posted @ 2018-01-11 14:57  Belinda_sl  阅读(3728)  评论(0编辑  收藏  举报