IOS自动打包上传至蒲公英

IOS自动打包上传至蒲公英自动打包分为两部分 生成 archive 文件 从 archive 文件中导出 ipa 包生成 archive 包在这里就需要使用到 xcodebuild 命令对于普通的 project 命令为 xcodebuildar projectproje 的名称 xcodeproj scheme 应用名称 configuratio 构造配置 archivePath 期望保存的 xcode15ios 上传应用至蒲公英

自动打包分为两部分

-生成archive文件 -从archive文件中导出ipa包

生成archive包 在这里就需要使用到xcodebuild命令

对于普通的project命令为:

xcodebuild archive -project project的名称.xcodeproj -scheme 应用名称 -configuration 构造配置 -archivePath 期望保存的路径

对于workspace 则命令为

xcodebuild archive -workspace workspace的名称.xcworkspace -scheme 应用名称 -configuration 构造配置 -archivePath 期望保存的路径

关于exportOptionPlist 是打包的配置信息(如是否支持bitecode,证书与描述文件.....)大概如下

在我的脚本中并没有对其进行自动生成,我的建议是手动打包一次 然后在打好的包中找到该文件保存起来 一劳永逸

当archive文件生成成功后 则须从中导出ipa包

xcodebuild -exportArchive -archivePath archive文件路径 -exportPath 打包后期望保存的路径 -exportOptionsPlist 导出配置的相关信息的plist文件

上传至蒲公英 根据蒲公英文档 API2.0 命令行如下

curl -F 'file=@ipa包的路径' -F '_api_key=蒲公英提供的AppKey' https://www.pgyer.com/apiv2/app/upload

在了解的步骤之后 只需要脚本将这些命令行组合起来 在其中插入自己需要的操作,如对测试人员的通知,当前状态的输出等等....(我没有这块的需求,就没有写了)

最后附上代码 因为代码不长 我就直接写在这里了

#! /usr/bin/env python3 import os 须用户配置 #将要上新的版本描述 updateDescription = '' # 项目路径 projectPath = '' # 项目名称 projectName = ' # 打包路径 IPASavePath = '' # exportOptionPlist文件路径 exportOptionPlistPath = '' #蒲公英App_Key pgy_appKey = '' #生成的Archive文件的路径 archivePath = IPASavePath + '/' +projectName + 'Archive' #生成的ipa包的路径 IpaPath = IPASavePath + '/Apps/' + projectName + '.ipa' # 清屏 def clearScreen(): os.system('clear') os.chdir(projectPath) # 生成archive文件 def makeArchive(): os.system('xcodebuild archive -workspace %s.xcworkspace -scheme %s -configuration Release -archivePath %s'%(projectName,projectName,archivePath)) # 生成iPa包 def makeIpa(): os.system('xcodebuild -exportArchive -archivePath %s.xcarchive -exportPath %s -exportOptionsPlist %s'%(archivePath,IPASavePath,exportOptionPlistPath)) # 上传至蒲公英 def upLoadToPGYer(): res = (os.popen("curl -F 'file=@%s' -F '_api_key=%s' -F'updateDescription=%s' https://www.pgyer.com/apiv2/app/upload"%(IpaPath,pgy_appKey,updateDescription))).readlines() #自动打包 def automaticPack(): clearScreen() makeArchive() makeIpa() upLoadToPGYer() automaticPack() 复制代码
今天的文章 IOS自动打包上传至蒲公英分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2024-12-11 12:27
下一篇 2024-12-11 12:21

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/83607.html