iOS自动化打包

1,708 阅读2分钟
前言

        对于大多数iOS从业者来说,每到测试阶段,可能都是一个痛苦的过程。每一个功能的调整,bug的修复,都需要进行一次打包,给予测试、产品进行验证。项目不是太大,时间可能不是太长,但是对于项目较大的来说,10分钟以上,妥妥的...所以自动化打包就很重要了。

流程

正常流程        

一般来说,iOS打包需要经过8次敲击:

  1. Xcode Product/Archive
  2. Distribute App
  3. Select a method of distribution,这个时候需要我们选择上传到App Store 还是进行测试打包,我们这里选择测试打包
  4. Ad Hoc discribution options
  5. Re-sign "xxx"
  6. preparing archive for distribution
  7. Review "xxx.ipa" content
  8. Select storage address这个时候,我们的"xxx.ipa"就可以在指定的地址查看到了,也可以继续其它人员进行安装查看了。当然一般来说还需要上传至三方平台生成二维码,更加方便下载;我这里主要使用了fir.im
  9. Uploaded to fir. Im到此一个使用Xcode打包的流程就完成了,可以愉快的使用二维码下载使用了。当然,我们在这里主要说一下自动化打包。

自动化打包

  1. 检测环境,确认ruby存在 ruby -v
  2. 如果需要使用上传fir.im,需先安装fir-cli,sudo gem install fir-cli
  3. 检测xcodebuild是否安装 xcode-select —install
  4. 将scripts文件夹放入工程目录中
  5. 配置scripts中的.plist表,信息可在正常打包后的ExportOptions.plist中查找,method:(内侧:development/ad-hoc,上架:App Store/app-store)
  6. 配置.sh
  7. cd至工程目录下的scripts文件夹,bash -l packaging_config.sh
  8. 成功后会在工程目录的上一级出现一个文件夹;(1、如果执行机器人时直接报错或者打包后生产空文件夹空,则可能是环境配置问题,需要从新开始配置;2、如果打包出来只有.xcarchive文件,则是证书配置问题,需要重新检查证书;3、如果有生成.api但却没成功上次到fir.im则可能是输入的fir token有误,或者fil-cil没安装成功)
  9. 打开自动操作“机器人”,选择运行Shell脚本,添加 bash -l 工程目录中.sh的绝对路径,运行试验,保存。这样配置下来,以后需要打包时,只需双击机器人,即可自动打包,并上传至fir.im生成二维码了;

.sh配置

target_name="xxx.xcodeproj" # 有效值 ****.xcodeproj / ****.xcworkspace (cocoapods项目)project_name="xxx" # 工程名work_type="project" # 有效值 project / workspace (cocoapods项目)api_token="xxxxxxxxxx" # fir token

.plist配置

替换teamID、method、Bundle ID,teamID可以查看旧版本的ExportOptions.plist中查看。

Demo