iOS--利用Fastlane实现自动化打包

栏目: 服务器 · 发布时间: 5年前

内容简介:在日常的开发工作中给测试同学打包测试是很正常的流程,但是每次都通过Xcode archive来生成测试包然后再导出,然后在上传到三方测试网站(蒲公英、fir等),一次两次感觉没有什么。但是一次次重新打包,之后就是全部重复无意义的工作,就会感觉很烦了,于是我想到了用自动化打包来说实现这个工作。Fastlane是一套非常实用而强大的组件,是用Ruby语言编写的一套自动化工具集和框架,其目的主要是为iOS和Android应用程序自动化测试部署和发布的最简单方法。它处理所有繁琐的任务,如生成屏幕截图,处理代码签名以

在日常的开发工作中给测试同学打包测试是很正常的流程,但是每次都通过Xcode archive来生成测试包然后再导出,然后在上传到三方测试网站(蒲公英、fir等),一次两次感觉没有什么。但是一次次重新打包,之后就是全部重复无意义的工作,就会感觉很烦了,于是我想到了用自动化打包来说实现这个工作。

Fastlane是什么?

Fastlane是一套非常实用而强大的组件,是用 Ruby 语言编写的一套自动化 工具 集和框架,其目的主要是为iOS和Android应用程序自动化测试部署和发布的最简单方法。它处理所有繁琐的任务,如生成屏幕截图,处理代码签名以及发布应用程序。

安装使用过程

1、安装

使用sudo gem install fastlane -NV或是brew cask install fastlane,这里使用gem安装的话需要注意一下淘宝ruby镜像已经不在更新,以前用过淘宝镜像的小伙伴需要更换为Ruby China 镜像。参考这里,安装过程可能需要一段时间,请耐心等待。

2、初始化Fastlane

cd到你想要自动化打包的项目下

iOS--利用Fastlane实现自动化打包

执行 fastlane init初始化,首先你需要输入你的开发者账号,如果你的appleid归属多个开发者账号的话根据需求选择一个回车继续,之后回提示输入密码并进行双重认证,根据提示输入即可。

iOS--利用Fastlane实现自动化打包

接下来会让你输入App Identifier ,填入相应的id即可。

iOS--利用Fastlane实现自动化打包

输入App名称。

iOS--利用Fastlane实现自动化打包

到这里就证明fastlane已经初步配置到你的项目当中了。

iOS--利用Fastlane实现自动化打包

3、设置相关配置文件

上面几步执行顺利的话你的项目里面会多一个fastlane文件夹,如图所示。

iOS--利用Fastlane实现自动化打包

我们自动化测试的最重要的部署文件就是这个Fastfile文件,双击编辑,这里面每一个lane都可以配置一种打包方式。

iOS--利用Fastlane实现自动化打包

我们在这里新增一个我们自己需要的lane。

desc "打包到pgy"
  lane :test do |options|
  gym(
    clean:true, #打包前clean项目
    export_method: "development", #导出方式
    scheme:"shangshaban", #scheme
    configuration: "Debug",#环境
    output_directory:"./app",#ipa的存放目录
    output_name:get_build_number(),#输出ipa的文件名为当前的build号
    # Xcode9将不会允许你访问钥匙串里的内容,除非设置allowProvisioningUpdates
    export_xcargs:"-allowProvisioningUpdates",
    # 隐藏没有必要的信息
    silent:true,
    # 手动配置证书,注意打包方式需在export_options内使用method设置,不可使用export_method
    export_options: {
        method:"development",
        provisioningProfiles: {
            "xxxxxx":"xxxxxx",
	    "xxxxxxx":"xxxxxxx"
            },
        }
    )

  pgyer(api_key: "xxxxx", user_key: "xxxx",update_description: options[:desc])
  end
复制代码

蒲公英api_key、user_key获取方式 。 这里的provisioningProfiles数据需要特别说明一下获取方式,在xcode里面点击product--》archive:

iOS--利用Fastlane实现自动化打包
iOS--利用Fastlane实现自动化打包
iOS--利用Fastlane实现自动化打包
iOS--利用Fastlane实现自动化打包

导出之后打开ExportOptions文件。

iOS--利用Fastlane实现自动化打包
iOS--利用Fastlane实现自动化打包

将上面红框部分对应到provisioningProfiles里面的值填进去就OK。 然后再终端输入fastlane add_plugin pgyer安装蒲公英相关插件:

iOS--利用Fastlane实现自动化打包

根据提示输入sudo gem install unf_ext -v '0.0.7.5'命令回车:

iOS--利用Fastlane实现自动化打包
去项目buildsetting设置: 然后再执行fastlane test,然后等待打包完成。

搞定,快让测试同学去下载吧。


以上所述就是小编给大家介绍的《iOS--利用Fastlane实现自动化打包》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Smarter Than You Think

Smarter Than You Think

Clive Thompson / Penguin Press HC, The / 2013-9-12 / USD 27.95

It's undeniable—technology is changing the way we think. But is it for the better? Amid a chorus of doomsayers, Clive Thompson delivers a resounding "yes." The Internet age has produced a radical new ......一起来看看 《Smarter Than You Think》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具