iOS 自动化打包的方法

xiaoxiao2021-02-27  223

使用脚本打包可以有三种方法。

不管使用哪种方法,项目的相关设置必须正确,如证书,描述文件等。

注意事项: 1、打包时必须进入项目目录进行 2、获取证书名称:Launchpad->其他->钥匙串访问->选择证书->鼠标右击->显示简介->细节->常用名称->复制 3、获取描述文件UUID:打开Xcode->菜单栏->Preferences->Accounts->Apple IDs->帐号->show Details->Provisioning Profiles->选择项目中使用的描述文件->鼠标右击->show in Finder 4、获取target/schemes:终端->cd 项目目录->进入项目目录后,执行命令"xcodebuild -list"

方法一,只是使用xcodebuild生成ipa包

[objc]  view plain  copy # xcodebuild      pwd      # 1 删除旧文件   rm -rf "archive/log.txt"   rm -rf "archive/zsydemo.xcarchive"   rm -rf "archive/zsydemo.ipa"      # 2 清除旧项目   xcodebuild clean -configuration Release -alltargets >> archive/log.txt      # 3 归档(其他参数不指定的话,默认用的是.xcworkspace或.xcodeproj文件里的配置)   # workspace   xcodebuild archive -workspace zsydemo.xcworkspace -scheme zsydemo -configuration Release -archivePath archive/zsydemo.xcarchive CODE_SIGN_IDENTITY="iPhone Developer: sy z (5BE779GQZQ)" PROVISIONING_PROFILE="06bbbb2c-083f-4313-b633-15bc685929a4" >> archive/log.txt   # project   # xcodebuild archive -project zsydemo.xcodeproj -scheme zsydemo -configuration Release -archivePath archive/zsydemo.xcarchive CODE_SIGN_IDENTITY="iPhone Developer: sy z (5BE779GQZQ)" PROVISIONING_PROFILE="06bbbb2c-083f-4313-b633-15bc685929a4" >> archive/log.txt      # 4 导出IPA xcodebuild   # 方法1(未使用plist文件设置ipa包;需要指定包格式)   xcodebuild -exportArchive -exportFormat IPA -archivePath archive/zsydemo.xcarchive -exportPath archive/zsydemo.ipa  -exportProvisioningProfile "zsydemoDevelopProfile" >> archive/log.txt   # 方法2(使用plist配置生成ipa;不需要指定包格式)   # xcodebuild -exportArchive -archivePath archive/zsydemo.xcarchive -exportOptionsPlist archive/ipaTestExportOptions.plist -exportPath archive >> archive/log.txt  

方法二,使用xcodebuild生成archive包,然后使用xcrun生成ipa包

使用注意事项:xcrun生成ipa包时必须时绝对的全路径

[objc]  view plain  copy # xcodebuild + xcrun   # 使用注意:项目必须设置好证书、描述文件;其次ipa包的生成路径必须是绝对的全路径         pwd      # 1 删除旧文件   rm -rf "archive/log.txt"   rm -rf "archive/zsydemo.xcarchive"   rm -rf "archive/zsydemo.ipa"      # 2 清理旧项目   xcodebuild clean -configuration Release -alltargets >> archive/log.txt      # 3 归档(其他参数不指定的话,默认用的是.xcworkspace或.xcodeproj文件里的配置)   xcodebuild archive -workspace zsydemo.xcworkspace -scheme zsydemo -destination generic/platform=iOS -configuration Release -archivePath archive/zsydemo.xcarchive CODE_SIGN_IDENTITY="iPhone Developer: sy z (5BE779GQZQ)" PROVISIONING_PROFILE="06bbbb2c-083f-4313-b633-15bc685929a4" >> archive/log.txt         # 4 导出IPA xcrun   pwd   ipa_path=`pwd`/archive/zsydemo.ipa   xcrun -sdk iphoneos PackageApplication -v archive/zsydemo.xcarchive -o "$ipa_path" >> archive/log.txt >> archive/log.txt  

方法三,使用xctool生成archive包,然后使用xcodebuild生成ipa包

使用注意事项:xctool生成archive包时必须设置正确的参数顺序

[objc]  view plain  copy # xcodebuild + xctool   # 使用注意:项目中必须正确设置证书、描述文件;且必须注意xctool命令书写格式。      pwd      echo "<----------开始删除旧文件---------->"      # 删除旧文件   rm -rf "archive/log.txt"   rm -rf "archive/zsydemo.xcarchive"   rm -rf "archive/zsydemo.ipa"      echo "<----------成功删除旧文件---------->"      echo "<----------开始清除旧项目---------->"      # 重要,执行xcodebuild命令时,必须进入项目目录   # 清空前一次build的项目缓存    xctool clean -workspace zsydemo.xcworkspace -scheme zsydemo -configuration Release >> archive/log.txt      echo "<----------成功清除旧项目---------->"      echo "<----------开始归档archive包---------->"      # 归档(其他参数不指定的话,默认用的是.xcworkspace或.xcodeproj文件里的配置)   # 根据指定的项目、scheme、configuration与输出路径打包出archive文件(注意参数配置顺序)   xctool -workspace zsydemo.xcworkspace -scheme zsydemo archive -archivePath archive/zsydemo.xcarchive >> archive/log.txt      echo "<----------成功归档archive包---------->"      echo "<----------开始导出ipa包---------->"      # 导出IPA 使用指定的provisioning profile导出ipa   xcodebuild -exportArchive -archivePath archive/zsydemo.xcarchive -exportPath archive/zsydemo.ipa -exportFormat ipa -exportProvisioningProfile "zsydemoDevelopProfile" >> archive/log.txt      echo "<----------成功导出ipa包---------->"      # 输出总用时   echo "<----------Finished. Total time: ${SECONDS}s---------->"   本文转自 点击打开链接

转载请注明原文地址: https://www.6miu.com/read-15650.html

最新回复(0)