xcodebuild 自动打包及分发

说起来挺戳的,之前后台和测试人员问我是否有自动打包的,当时没多想以及查证,直接说没有。当时也是忙、不想去看。
项目交付后,无意间看到了这个:[iOS-Release] 自动打包分发
好吧,想起来之前的事情了,最近又比较清闲、就倒弄下自动打包及分发。
废话讲了一大推,现在开始:

打包前准备:

配置当期项目路径,项目名称,输出ipa包路径,蒲公英appkey,蒲公英uKey,设置打包方式

上步骤:

1、个人建议先clean下

xcodebuild clean -workspace DaBao_Demo.xcworkspace -scheme DaBao_Demo -configuration clean

2、导出.xcarchive 文件

xcodebuild archive -workspace DaBao_Demo.xcworkspace -scheme DaBao_Demo -archivePath ./build/DaBao_Demo.xcarchive

3、导出ipa包

xcodebuild -exportArchive -archivePath ./build/DaBao_Demo.xcarchive -exportPath ./build -exportOptionsPlist ad_hoc_options.plist

4、上传平台:参考蒲公英

curl -F "file=@./build/DaBao_Demo.ipa" -F "uKey=XXX” -F "_api_key=XXX” -F "updateDescription=your_description" http://www.pgyer.com/apiv1/app/upload

(第一个XXX填User Key,第二个api key)

注意:
1、ad_hoc_options.plist文件设置
在Xcode9.0以后要设置provisioningProfiles,增加Build ID (key)对应 证书设置里面 Provisioning Profiles 的打包名字.
打包有四种:app-store, ad-hoc, enterprise, development,常用的是hoc和store打包。


xcodebuild 自动打包及分发_第1张图片
plist文件配置截图

2、Xcode升级后打包提示插件失效问题

find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add 'defaults read /Applications/Xcode.app/Contents/Info.plist DVTPlugInCompatibilityUUID'

3、查看Xcode UUID的方法,终端输入

defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID

4、蒲公英key位置
xcodebuild 自动打包及分发_第2张图片
Key

附带遇到坑的参考链接:
Xcode9 xcodebuild 命令行打包时遇到的问题及解决方案
iOS 测试 xcodebuild 命令行打包遇到的坑与解决方案 2017
Xcode升级后插件失效的原理与修复办法
蒲公英上传说明文档

你可能感兴趣的:(xcodebuild 自动打包及分发)