美文网首页
iOS自动化打包

iOS自动化打包

作者: 流沙Var | 来源:发表于2018-05-08 15:12 被阅读0次
    再过几天就要开启两个新项目(吐槽一下,真的很累~~~(>_<)~~~),那么项目测试阶段肯定免不了要频繁的打测试包,为了节省时间就想到了iOS自动化打包,趁着新项目开启前期,赶紧自己敲敲摸摸的研究一下。(本文章只是一篇特别简单的教程,想要深究的执行查阅资料,不喜勿喷)

    本文探讨的打包方式是比较常用fastlane,它是用Ruby写的自动化工具集,主要用于iOS和Android的自动化打包、发布等工作,项目托管在github上,有多人维护,有详细的文档。

    fastlane_text.png
    • fastlane相关链接:

    项目地址:https://github.com/fastlane/fastlane
    官网地址:https://fastlane.tools
    文档地址:https://docs.fastlane.tools

    安装

    1.首先要安装正确的 Ruby 版本。在终端窗口中用下列命令来确认:

    ruby -v

    2.然后检查 Xcode 命令行工具是否安装。在终端窗口中输入命令:

    xcode-select --install

    如果报错误:command line tools are already installed, use "Software Update" to install updates代表已经安装。

    3.以上依赖配置好之后就可以开始安装fastlane了。在终端窗口中输入命令:

    sudo gem install fastlane

    或者

    brew cask install fastlane

    (不过我通过这条命令安装的fastlane成功之后,却无法执行相关命令,希望大神指教)

    初始化

    4.按照上述命令安装好fastlane之后,cd到你的工程目录,然后执行:

    fastlane init

    初始化时,会出现4个选项:

    Automate screenshots(自动化截图)
    Automate beta distribution to TestFlight(TestFlight)
    Automate App Store distribution(appStore发布版本)
    Manual setup - manually setup your project to automate your tasks(自定义)

    我一般选择第四个选项,然后一直按回车就可以了,初始化完成后,会出现fastlane文件夹,该目录下包含了Appfile和Fastfile。

    • Appfile:app_identifier用于指定APP的bundle id,apple_id指的是你的AppleID
    • Fastfile:用于管理创建的lane,lane则可以调用各个action(即fastlane的工具链)

    打包

    打包需要使用gym工具,在安装fastlane时已默认安装了常用工具,所以不需要另外安装gym工具,调用gym需要先cd到项目目录。

    5.自动打包然后推送到ITunesConnect中,则输入以下命令(在这个过程中需要输入AppId及密码):

    fastlane gym

    如果不需要提交到ITunesConnet中,想自己自动生成ipa文件(我一般都是使用这条命令生成测试包),可执行:

    fastlane gym --export_method ad-hoc

    只要稍微等待一会,就会在项目目录下生成ipa文件,如果你只是想单存的打个包,那么到这里已经结束了O(∩_∩)O。。。

    上传到托管平台

    为了方便分发测试,我的项目需要上传到fir.im托管平台,所以我还需要安装fir工具集fir-cli以便上传。

    gem install fir-cli

    • 安装后可以先执行登陆操作,登陆后在后续操作中可以不用重复添加token了(token需要到fir.im个人账号中获得),执行操作:

    fir login api_token(填写你的API token)

    • 发布测试包到fir.im,准备好刚刚生成的ipa文件,执行

    fir publish app_file_path(ipa路径,直接拖拽ipa进来就会生成)

    因为要经常发版,所以肯定要为项目添加描述了,在上面的命令(回车之前)后面直接加上:

    -c --changelog='这里添加描述'

    到此,从打包到上传托管平台的完整流程就走完了,上传成功后就可以在托管平台上下载安装测试了O(∩_∩)O。。。

    结语

    本文只是很简单的介绍了iOS自动化打包流程,关于自动化打包还有很多好玩、高深的技巧,想要学习的同学自己去查看文档资料,在这里就不做深究了,如果你觉得本文对你有帮助的话请给个👍

    github: https://github.com/HappyDeveloperPan

    相关文章

      网友评论

          本文标题:iOS自动化打包

          本文链接:https://www.haomeiwen.com/subject/lqsirftx.html