Fastlane基础介绍
Fastlane是什么
Git地址:Fastlane文档地址:Fastlane Document- Fastlane是一整套的客户端CICD工具集合。Fastlane可以非常快速简单的搭建一个自动化发布服务,并且支持Android,iOS,MacOS。
- Fastlane命令执行的底层并不是自己实现的,而是调用其他的插件或者工具执行的。比如说打包,Fastlane中的gym工具只是xcodebuild工具的一个封装,调用的其实还是xcodebuild中的打包命令。
- Fastlane本身没有一套特殊语法,使用的Ruby语言。
- Fastlane的插件工具叫做action,每一个action都对应一个具体的功能
Fastlane安装
1、安装xcode命令行工具,在终端输入:
xcode-select --install
2、安装Fastlane,在终端输入:
//方式一:Using RubyGems
sudo gem install fastlane -NV
//方式二:Using Homebrew
brew cask install fastlane
Fastlane初始化工程
1、进入工程的根目录,在终端输入Fastlane初始化命令:
sudo fastlane init
2、初始化完成后会要求选择创建目的:
- What would you like to use fastlane for?
- Automate screenshots
- Automate beta distribution to TestFlight
- Automate App Store distribution
- Manual setup - manually setup your project to automate your tasks
如果是要上传AppleStore选3,如果是企业版选4
3、安装验证
- 在fastlane文件中写入:
default_platform(:ios)
platform :ios do
desc "生成本地版本"
lane :testabc do
build_app(scheme: "ZEUS")
end
end
- 进入工程的根目录,在终端输入:
fastlane testabc desc:测试打包
Fastlane常用工具(action)
查询action:
在命令行输入:
//查询所有action
fastlane actions
//查询制定action
fastlane action [action_name]
action分类:
- Testing
| Action | Description | Supported Platforms |
|---|---|---|
| scan | Alias for the run_tests action | ios, mac |
| slather | Use slather to generate a code coverage report | ios, mac |
| swiftlint | Run swift code validation using SwiftLint | ios, mac |
| xcov | Nice code coverage reports without hassle | ios, mac |
| sonar | Invokes sonar-scanner to programmatically run SonarQube analysis | ios, android, mac |
| oclint | Lints implementation files with OCLint | ios, android, mac |
| gcovr | Runs test coverage reports for your Xcode project | ios |
| lcov | Generates coverage data using lcov | ios, mac |
| appium | Run UI test by Appium with RSpec | ios, android |
| xctool | Run tests using xctool | ios, mac |
| run_tests | Easily run tests of your iOS app (via scan) | ios, mac |
| xcode_server_get_assets | Downloads Xcode Bot assets like the .xcarchive and logs | ios, mac |
- Building
- Screenshots
- Project
- Code Signing
- Documentation
- Beta
- Push
- Releasing your app
- Source Control
- Notifications
- App Store Connect
- Misc
- Deprecated
踩坑笔记
1.报Missing Private Key:
需要从有证书的Mac中导入证书的p12私钥安装到新的打包机2.在compiling Swift source files这一步再也不动了:
Project --> Build Settings --> Swift compiler-code generation 找到Optimization Level 将其设置为No optimization[-Onone]
Fastlane基础介绍的更多相关文章
- Web3D编程入门总结——WebGL与Three.js基础介绍
/*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...
- C++ 迭代器 基础介绍
C++ 迭代器 基础介绍 迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围.迭代器就如同一个指针.事实上,C++的指针也是一种迭代器.但是,迭代器不仅仅是指针,因此你不能认为他们一定 ...
- Node.js学习笔记(一)基础介绍
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...
- Node.js 基础介绍
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...
- 1、git基础介绍及远程/本地仓库、分支
1. Git基础介绍 基于Git进行开发时,首先需要将远程仓库代码clone到本地,即为本地仓库.后续大部分时间都是基于本地仓库上的分支进行编码,最后将本地仓库的代码合入远程仓库. 1.1. 远程仓库 ...
- git基础介绍
git基础介绍 这是git操作的基础篇,是以前的写的操作文档,就没有进行手打,直接把图片贴进来了,你们担待哈,有不正确的地方可以指正出来,我将在第一时间去修改,多谢哈! 一.文件状态:git系统的文件 ...
- OSPF基础介绍
OSPF基础介绍 一.RIP的缺陷 1.以跳数评估的路由并非最优路径 2.最大跳数16导致网络尺度小 3.收敛速度慢 4.更新发送全部路由表浪费网络资源 二.OSPF基本原理 1.什么是OSPF a& ...
- iOS系统及客户端软件测试的基础介绍
iOS系统及客户端软件测试的基础介绍 iOS现在的最新版本iOS5是10月12号推出,当前版本是4.3.5 先是硬件部分,采用iOS系统的是iPad,iPhone,iTouch这三种设备,其中iPho ...
- 高通camera结构(摄像头基础介绍)
摄像头基础介绍 一.摄像头结构和工作原理. 拍摄景物通过镜头,将生成的光学图像投射到传感器上,然后光学图像被转换成电信号,电信号再经过模数转换变为数字信号,数字信号经过DSP加工处理,再被送到电脑中进 ...
随机推荐
- 2、使用Python3爬取美女图片-网站中的妹子自拍一栏
代码还有待优化,不过目的已经达到了 1.先执行如下代码: #!/usr/bin/env python #-*- coding: utf-8 -*- import urllib import reque ...
- java ee服务器/应用服务器的理解
42.由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现.43.可以这样认为,当在一台机器上配 ...
- POJ 1286
Burnside定理. 可以用Euler函数优化. #include <iostream> #include <cstdio> #include <cstring> ...
- Cocos2d-x使用Luajit将Lua脚本编译为bytecode,实现加密 更新
项目要求对lua脚本进行加密,查了一下相关的资料 ,得知lua本身能够使用luac将脚本编译为字节码(bytecode)从而实现加密,试了一下,确实可行. 以下是使用原生的lua解释器编译字节码: 1 ...
- DSAPI多功能组件编程应用-DS提示气泡
首先下载DSAPI.dll.并在项目中引用. 该功能包括在DSAPI1.0.1.1及更高版本号,DLL请到本人资源里查找. Private Sub Button1_Click(sender As Ob ...
- Android开发之AudioManager(音频管理器)具体解释
AudioManager简单介绍: AudioManager类提供了訪问音量和振铃器mode控制. 使用Context.getSystemService(Context.AUDIO_SERVICE)来 ...
- nyist oj 138 找球号(二)(hash 表+位运算)
找球号(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描写叙述 在某一国度里流行着一种游戏.游戏规则为:现有一堆球中.每一个球上都有一个整数编号i(0<=i< ...
- bzoj2150: 部落战争(匈牙利)
2150: 部落战争 题目:传送门 题解: 辣鸡数据..毁我AC率 先说做法,很容易就可以看出是二分图匹配的最小路径覆盖(可能是之前不久刚做过类似的题) 一开始还傻逼逼的去直接连边然后准备跑floyd ...
- CentOS7设置中文输入法
转自:https://i.cnblogs.com/EditPosts.aspx?postid=8327755&update=1 CentOS7设置中文输入法 安装CentOS7之后,鼓捣了半天 ...
- js字符串日期yyyy-MM-dd转化为date示例代码
最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN 找了些资料,发现是由于Date.parse()函数对日期格式有要求: ...