iOS fastlane项目打包+上传到firim(图文)

前言

前段时间用了Jenkins发现各种报错,神烦。本以为fastlane用脚本,而自己又不会脚本,会出现各种麻烦,然而其实用了fastlane之后才发现真的好用,配置基本按照一个模式不会出什么错。

配置好fastlane之后,在终端输入一句命令即可实现打包上传。

  • 1.安装RVM(如果已安装,请跳过)

1.1安装

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

1.1.png

1.2验证

$ source ~/.bashrc
$ source ~/.bash_profile

1.2.png

1.3测试安装是否正常

$ rvm -v

如果出现 rvm版本号+作者 基本就算是安装RVM成功了。

1.3.png

  • 2.安装ruby(如果已安装,请跳过)

2.1列出已知ruby的版本

$ rvm list known

2.1.png

2.2安装ruby

一般安装最新版,我安装的时候最新版是2.4.0

$ rvm install 2.4.0

2.2.png

途中,你可能会遇到以下一些问题要按几次enter键进行确认

2.2.1.png

  • 3.安装fastlane

3.1安装

加上 -n /usr/local/bin是因为Mac OS X 10.11 已经禁止修改/usr/bin目录了

$ sudo gem install fastlane -n /usr/local/bin
$ sudo gem install firim -n /usr/local/bin

3.1.png

  • 4.fastlane设置
    4.1初始化

$ cd + (你的项目路径)

4.1.png

$ fastlane init

4.1.1.png

途中,如果你是第一次安装使用fastlane,需要输入apple id和密码,我已经用过了所以不用输入。

完成之后,项目文件夹里边会生成一个fastlane文件夹

4.1.2.png

4.2安装插件

$ fastlane add_plugin versioning
$ fastlane add_plugin firim

4.2.png

途中,你需要按y进行确认


  • 5.项目打包配置
    打开项目文件夹下fastlane里边的Fastlane文件
5.1.png

Fastlane文件中原来的内容可以不管,添加如下内容:

desc "archive ipa"
lane :archive do
#打包的ipa存放路径
outputDir = "~/firim/ipa/#{Time.now.strftime('%y%m%d')}"
#打包的ipa名称
outputName = "MOFSPickerManager-#{Time.now.strftime("%Y-%m-%d %H:%M:%S")}"
gym(
scheme: "MOFSPickerManagerDemo", #改为你项目的scheme
#workspace: "DFKJ.xcworkspace", #如果项目使用CocoaPods需要加上
configuration: "Release",
output_directory: outputDir,
output_name: outputName,
include_bitcode: false,
include_symbols: true,
codesigning_identity: ENV["CODESIGNING_IDENTITY_TO_FIRIM"],
silent: true,
export_options: {
method: "development", #根据具体情况定
thinning: "<none>"
}
)
firim(firim_api_token: "你的firim的token") #上传到firim
end

其中需要改的内容为:
1.scheme 你的项目scheme

5.1.1.png

2.如果项目使用CocoaPods需要加上workspace

3.注册firim账号(过程略),firim的token如下

图片.png

如果不上传到firim上边上传语句中加#注释掉。

添加好的截图如下:

图片.png

6.执行打包上传命令

$ fastlane archive

其中命令对应关系如下图,可在Fastlane中添加若干lane语句,然后在终端执行fastlane + “名称”。

图片.png

成功截图:

图片.png

其中打包好的ipa文件位置在终端中可以看到;

图片.png

问题记录

  • 1.如果执行fastlane init报错undefined method `split' for nil:NilClass

解决:如下图打开xcode选上Command Line Tools

图片.png

结束语

要讲的内容就这些,其他内容请自行探索,如果发现文章有什么问题,请留下评论发表意见,谢谢!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容