ios命令行打包ipa

配置证书

和用Xcode打包一样,首先要配置好相关证书

具体步骤如图所示:

ios命令行打包ipa_第1张图片
ios命令行打包ipa_第2张图片
ios命令行打包ipa_第3张图片

证书配置好后就可以进行下面操作了

使用命令行打包ipa

首先打开终端,进入工程文件夹下(即.xcodeproj工程所在的位置,这里以Alipay工程为例):

ios命令行打包ipa_第4张图片
$ cd /Users/zmt/Desktop/Demo/me/Alipay/

命令行打包有两种方法,任选其一即可

方法一:

xcodebuild

(1)清除

$ xcodebuild clean -project /Users/zmt/Desktop/Demo/me/Alipay/Alipay.xcodeproj -configuration ${CONFIGURATION} -alltargets

/Users/zmt/Desktop/Demo/me/Alipay/Alipay.xcodeproj为工程路径

ios命令行打包ipa_第5张图片

出现上图的CLEAN SUCCEEDED表示成功,可进行下一步

(2)构建

$ xcodebuild archive -project /Users/zmt/Desktop/Demo/me/Alipay/Alipay.xcodeproj -scheme Alipay -archivePath bin/Alipay.xcarchive

/Users/zmt/Desktop/Demo/me/Alipay/Alipay.xcodeproj为工程路径
bin/Alipay.xcarchive为.xcarchive文件的目标路径

ios命令行打包ipa_第6张图片

出现上图的ARCHIVE SUCCEEDED表示成功,可进行下一步

(3)打包

$ xcodebuild -exportArchive -archivePath bin/Alipay.xcarchive -exportPath Alipay -exportFormat ipa -exportProvisioningProfile "MytestDistributionFengyu"

bin/Alipay.xcarchive为.xcarchive文件路径(也就是上一步.xcarchive文件的目标路径)
Alipay为导出路径
MytestDistributionFengyu为配置文件(Provisioning Profile)的名称

ios命令行打包ipa_第7张图片

出现上图的EXPORT SUCCEEDED表示成功,最终文件夹为:

ios命令行打包ipa_第8张图片
方法二:

xcrun

(1)清除

$ xcodebuild clean

出现CLEAN SUCCEEDED表示成功,可进行下一步

(2)编译

$ xcodebuild -target Alipay -configuration Release

Alipay为工程名

ios命令行打包ipa_第9张图片

出现上图的BUILD SUCCEEDED表示成功,可进行下一步

(3)打包

在上一步后,工程文件夹中会变成:

ios命令行打包ipa_第10张图片
$ xcrun -sdk iphoneos  PackageApplication -v /Users/zmt/Desktop/Demo/me/Alipay/build/Release-iphoneos/Alipay.app -o /Users/zmt/Desktop/Demo/me/Alipay/Alipay.ipa 

/Users/zmt/Desktop/Demo/me/Alipay/build/Release-iphoneos/Alipay.app为上图所指的的APP路径
/Users/zmt/Desktop/Demo/me/Alipay/Alipay.ipa为导出ipa的目标路径

ios命令行打包ipa_第11张图片

出现上图红线所画内容表示成功,最终文件夹为:

ios命令行打包ipa_第12张图片

参考:
https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man1/xcodebuild.1.html

补充

如果上方两种命令行打包方式都不能完成打包可以试下下面这种方法(该方法是对xcrun的一种改变):

(1)清除

第一步和xcrun方法一样

$ xcodebuild clean

出现CLEAN SUCCEEDED表示成功,可进行下一步

(2)编译

这里是重点改变的地方,把之前的target换成scheme

$ xcodebuild  -scheme Nectar -configuration Release

Nectar为工程名

ios命令行打包ipa_第13张图片

出现上图的BUILD SUCCEEDED表示成功,可进行下一步

(3)打包

在上一步后,我们可以获得下面需要用到的APP路径,为上图中红线部分

$ xcrun -sdk iphoneos  PackageApplication -v /Users/zmt/Library/Developer/Xcode/DerivedData/Nectar-angowleujeuzjoekhzqmwbgtbrrl/Build/Products/Release-iphoneos/MDP.app -o /Users/zmt/Desktop/Nectar/ios/Nectar.ipa

/Users/zmt/Library/Developer/Xcode/DerivedData/Nectar-angowleujeuzjoekhzqmwbgtbrrl/Build/Products/Release-iphoneos/MDP.app为上图所指的的APP路径
/Users/zmt/Desktop/Demo/me/Alipay/Alipay.ipa为导出ipa的目标路径

ios命令行打包ipa_第14张图片

出现上图红线所画内容表示成功。

你可能感兴趣的:(ios命令行打包ipa)