xcodebuild结合shell脚本实现iOS工程一键打包

3,419 阅读2分钟

提示:这里只列举企业证书(enterprise)打包、AdHoc、AppStore只需要简单修改即可完成。

探究过程:

(1)工程需要手动配置证书、使用xcodebuild打包 首先需要在工程目录同级建立plist文件、这是xcodbuild必带参数(-exportOptionsPlist)

plist文件内容如下图所示: 要添加项目对应的BundleID以及描述文件名称、method为打包方式(企业证书是enterprise、appstore证书是app-store、AdHoc证书是ad-hoc)
xcode建立shell脚本、脚本内容如下:

#!/bin/sh
cd  /Users/mac/Desktop/平湖/iOS_PingHuZhiHuiYiLiao

rm -rf build

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

xcodebuild -exportArchive -archivePath build/PingHuMedicaWisdom.xcarchive -exportPath build -exportOptionsPlist export.plist

执行shell脚本(简单的shell还是要会的,这里不再讲解) xcodebuild命令分解详细过程以及命令参数如下: 执行xcodebuild -workspace PingHuMedicaWisdom.xcworkspace -scheme PingHuMedicaWisdom -archivePath build/PingHuMedicaWisdom.xcarchive archive结束会在同级目录创建build文件夹,进过一系列编译导出PingHuMedicaWisdom.xcarchive 如下图所示:

参数详解如下: -workspace cocopods文件名 -scheme 工程名字 -archivePath xcarchive文件路径

继续执行xcodebuild -exportArchive -archivePath build/PingHuMedicaWisdom.xcarchive -exportPath build -exportOptionsPlist export.plist 最终在build文件夹导出ipa包。如下图所示:

参数详解如下: -archivePath PingHuMedicaWisdom.xcarchive路径、 上面命令执行得到的 -exportPath ipa包路径,根据需要自己设置。这里是build文件下 -exportOptionsPlist plist文件

(2)工程无需配置证书、实现自动签名、执行脚本一键打包 详细步骤不再重复(提示:也要新建plist文件和上面一样的步骤)、仍然依企业证书为例、直接看shell内容、代码如下:

#!/bin/sh
ZhuoJian_Project_Name="工程名字"
ZhuoJian_Workspace_Name="cocopods工程名字"
ZhuoJian_Configuration="Release"

#enterprise---------Bundle ID
ZhuoJian_EnterpriseBundleID="项目bundleID"

#enterprise--------证书名#描述文件
ENTERPRISECODE_SIGN_IDENTITY="iPhone Distribution:证书名称"
ENTERPRISEROVISIONING_PROFILE_NAME="描述文件"

cd  工程路径
rm -rf build

xcodebuild -workspace $ZhuoJian_Workspace_Name.xcworkspace -scheme $ZhuoJian_Project_Name -configuration $ZhuoJian_Configuration -archivePath build/$ZhuoJian_Project_Name.xcarchive archive build CODE_SIGN_IDENTITY="${ENTERPRISECODE_SIGN_IDENTITY}" PROVISIONING_PROFILE="${ENTERPRISEROVISIONING_PROFILE_NAME}" PRODUCT_BUNDLE_IDENTIFIER="${ZhuoJian_EnterpriseBundleID}"

xcodebuild -exportArchive -archivePath build/$ZhuoJian_Project_Name.xcarchive -exportPath ~/Desktop/ -exportOptionsPlist export.plist

简单分析如下:

执行shell脚本、在桌面可得到ipa包、一键打包完成。