iOS 使用命令行打包

1:切换到你的IOS项目路径,执行如下命令:

xcodebuild clean -configuration Release -alltargets
然后:
xcodebuild archive -project RedGo.xcodeproj -scheme RedGo -configuration Release -archivePath build/RedGo.xcarchive CODE_SIGN_IDENTITY="Apple Distribution: **** (****)" PROVISIONING_PROFILE="UUID"

其中参数 -workspace 指定的是项目后缀为.xcworkspace文件或参数为-project
参数 -scheme 指定项目名称
参数 -configuration 指定的是Debug或者Release。
参数 -archivePath 保存archive的文件的路径
参数 CODE_SIGN_IDENTITY为证书全名Apple Distribution: ***** (*****)---证书简介文件全名
参数PROVISIONING_PROFILE为描述文件UUID

然后:
xcodebuild -exportArchive -archivePath build/RedGo.xcarchive -exportPath ~/Desktop/RedGo/ -exportOptionsPlist ~/Desktop/RedGo/ExportOptions.plist

其中参数 -archivePath 指定上面你保存archive的文件路径。
参数 -exportPath 指定你要把ipa文件和其他文件保存在哪个目录
参数 -exportOptionsPlist 这个参数很重要,这个plist文件如果不知道是什么,你可以使用Xcode导出一版ipa就可以看到这个文件。
上行代码的两个参数也可以添加如这个

2:使用Xcode打包ipa文件--不需要解释、最好使用这个、命令行导出虽然挺不错的但是他的最后一步也需要你做一下Xcode打包才能知道plist文件内容

上传
cd到ipa文件目录下
验证
xcrun altool --validate-app -f FitnessHealth.ipa -t ios --apiKey GK94BZ23U7 --apiIssuer 5aaeb9cf-8026-48ae-8f6f-01d4f1512d1f --verbose
参数apiKey和apiIssuer需要在appstoreconnect网页中操作----用户与访问--密钥--创建密钥、可以选择开发者--最后下载api密钥
下载的文件需要放入本机用户下的一个文件夹中建议private_keys之后就可以了、如果没有这个操作、运行命令会报错
可选的文件夹为 './private_keys', '~/private_keys', '~/.private_keys',and '~/.appstoreconnect/private_keys'.
所以你如果想创建./private_keys文件夹就必须是root下创建,而不是在用户下了

上传
xcrun altool --upload-app -f FitnessHealth.ipa -t ios --apiKey GK94BZ23U7 --apiIssuer 5aaeb9cf-8026-48ae-8f6f-01d4f1512d1f --verbose

这是最完整的了

你可能感兴趣的:(iOS 使用命令行打包)