Python的iOS自动化打包

前言

这段时间刚刚学习了一段时间的Python,加上自己是做iOS开发的,就想着用Python来做一个自动化打包,可以自动完成打包,上传到蒲公英,并且发送邮箱给测试人员.

一是可以减少打包功夫,二来可以练练手,结合自己的工作来输出一点东西.废话不多说,直接上代码...

原理

就是使用xcodebuild来控制Xcode进行一系列的操作,从而完成打包的操作.

为什么要做这个?

在我们日常开发的时候,特别是在内部测试的时间,有可能需要频繁的打包,打包的工作比较繁琐,需要等待点击下一步,选择之类,影响了开发的节奏.(开玩笑,我能有啥节奏...), 为什么不能直接运行,然后完成所有的操作呢?

思路:

从网上查找了一些关于xcodebuild来打包的资料,从而得到:

找到对应的项目

clean项目

archive项目

export IPA

上传蒲公英

发送邮件

收工

思路有了,动手起来.

运行环境

Python, Xcode

这些需要大家直接去搭建好环境...

准备工作

下载安装pycharm(这只是我开发Python的工具而已,大家可以根据自己喜欢的来选择)

注册并认证蒲公英(不认证的话,是不能上传的)

邮箱开启POP3/SMTP服务(我使用的是QQ邮箱),记录下16位授权码

一个ExportOptions.plist文件, 这个下面会解释为什么需要还有怎么生成!

一份iOS项目代码→_→

完整代码

关于ExportOptions.plist文件

因为 Xcode 9+ 默认不允许访问钥匙串的内容,必须要设置 allowProvisioningUpdates 才会允许,Python的Xcode插件目前无法支持此项完成打包流程。

解决步骤如下:

手动Xcode10打包,导出ExportOptions.plist文件;

编辑ExportOptions.plist文件,配置 provisioningProfiles 对应填入Bundle identifier及证书关联配置文件(打包时自动匹配或手动填入证书,provisioningProfiles需配置的必填信息可自动生成);

提供ExportOptions.plist文件路径供Python脚本调用(详请参看Python脚本代码)。

具体的内容

分析

问题一

配置一下compileBicode=NO即可

作者:lxiaok

链接:https://juejin.im/post/5bed3657518825604e0e4289

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181127B0AHMF00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券