美文网首页
关于使用Shell脚本实现iOS自动化打包

关于使用Shell脚本实现iOS自动化打包

作者: 郝程序猿 | 来源:发表于2017-10-17 13:34 被阅读69次

关于自动化打包这块,因为之前弄过Jenkins,感觉太费事了,各种环境搭建,还出现各种问题,短时间想弄一个自动化的东西,还是挺麻烦的,后来我就想,看看能不能做一个使用shell脚本打包的,很幸运,正好让我遇到了Jiajung大神,因为在使用上,我们主要是发到fir或者蒲公英上进行内测,所以不涉及到发到App Store的事宜,所以将Jiajung的shell脚本稍稍做了一些修改,下面就是从环境搭建到使用的过程:

1.rvm安装:

在终端输入rvm -v命令查看,如果打印出rvm:command not found说明没有安装过rvm,如果能打印出rvm版本等信息说明安装过。

在终端输入curl -L get.rvm.io | bash -s stable,然后稍等一会rvm就安装好了

在终端输入source ~/.bashrc

在终端输入source ~/.bash_profile

再输入rvm -v查看安装成功

2.因为要上传到Fir平台,需要先安装fir-cli

在终端中输入 gem install fir-cli进行安装

3.安装完成fir-cli后 需要配置shell脚本

图1

根据图中配置: project_name使用自己的工程名称,不带后缀,scheme_name一般与工程名称相同

图 2

将-T 后面xxx 替换成自己在fir上的API Token ,在fir上可以找到

图3

配置好后shell.sh ,将这三个文件放到工程的根目录中,如图:

图4

接下来,就是使用了。打开终端,一直cd到工程根目录,就是存放shell脚本的目录,然后./shell.sh  回车就会执行脚本,这个时候我使用的时候出现两个问题,一个是xcode的问题,因为我安装了两个xcode ,会一直报错,报错信息忘记存了········,但是我再终端中 执行 xcode-select –install命令 然后选择install把这个问题解决了,后来就是证书问题,因为证书不是自己做的,新做的证书一直报错,这个错误就是:

error: exportArchive: "ClassMate.app" requires a provisioning profile with the Push Notifications and Associated Domains features.

Error Domain=IDEProvisioningErrorDomain Code=9 ""ClassMate.app" requires a provisioning profile with the Push Notifications and Associated Domains features." UserInfo={NSLocalizedDescription="ClassMate.app" requires a provisioning profile with the Push Notifications and Associated Domains features., NSLocalizedRecoverySuggestion=Add a profile to the "provisioningProfiles" dictionary in your Export Options property list.}

一直在给jiajung留言,大神也很照顾,不断的给我回复,后来的解决办法就是·····使用了证书 Automatically manage signing,然后就解决了······  😳😳😳

以上就是使用shell脚本打包中遇到的一些问题与解决办法。因为我们使用的是SVN进行代码管理,所以我在脚本的最开始增加了拉取代码 svn update ,如果没有这个需求的可以直接删除,因为我这里的主要用途就是直接打到fir的包,所以之前在Jiajung中提到的 选择1或者2 发到App Store或者fir中的选择 我做了修改,也就是在../shell.sh 后不用任何选择 直接将包打到fir,如果有需要实现两种打包的,请移驾 Jiajung  查看完整版。

相关文章

网友评论

      本文标题:关于使用Shell脚本实现iOS自动化打包

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