使用CI脚本为iOS 应用生成IPA, 常用的方法是使用xcodebuild生成app之后, 再调用
xcrun -sdk iphoneos -v PackageApplication $APP_NAME -o $IPA_NAME
不幸的是, xcode更新到8.3之后, PackageApplication工具已经被废弃了, 这个方法无法奏效, 不过apple 还是为脚本生成IPA提供了另外一种方法, 那就是
- 第一步:使用xcodebuild生成archive
- 第二部: 将生成的archive文件打包成IPA.
示例代码如下:
xcodebuild -scheme $SCHEME_NAME clean archive -archivePath $ARCHIVE_NAME
xcodebuild -exportArchive -archivePath $ARCHIVE_NAME -exportPath $IPA_NAME -exportOptionsPlist-exportOptionsPlist $PLIST_NAME
美中不足的是, 这个方法需要使用scheme 指定一个用户的scheme, 无奈之下, 为CI服务器生成了一个scheme,放到了代码仓储.
scheme的信息可以用命令 xcodebuild -list 查看