Xcode11 使用xcrun altool上传IPA包

6,736 阅读2分钟
Xcode supports uploading apps from the Organizer window or from the command line with xcodebuild or xcrun altool. Application Loader is no longer included with Xcode
Xcode支持使用Organizer窗口或使用xcodebuild或xcrun altool从命令行上传应用程序。 Xcode不再包含Application Loader

官方文档

Xcode11后Application Loader正式从Xcode的工具栏中消失。我们可以使用xcrun altool或者xcodebuild(也就是打包后直接选择upload而不是选择打包)上传。或者是fastlane自动化打包上传,还有苹果刚推出的图形化上传工具TransporterApplication Loader性质差不多也是很好用方便。不过下面将的是使用xcrun altool上传到App Store。

如果喜欢图形化界面可以下载Transporter 上传。 如果用终端可以使用xcrun altool上传,下面就是讲用xcrun altool上传步骤,一共就两步验证、上传。验证很快几秒吧,上传时间跟网速有关,我第一次上传用了大概有个十分钟吧。

验证

xcrun altool --validate-app -f <包的路径.ipa> -t iOS --apiKey <密钥ID> --apiIssuer <issuer ID> --verbose
示例:
xcrun altool --validate-app -f Users/macbookpro/Desktop/317hu\ 2019-10-31\ 14-23-34/317hu.ipa -t ios --apiKey 5Z7J --apiIssuer 69a6de8a-5b8c7c11a4d1 --verbose

验证成功

No errors validating archive at '/Users/macbookpro/317hu.ipa'

上传

xcrun altool --upload-app -f <包的路径.ipa> -t iOS --apiKey <密钥ID> --apiIssuer <issuer ID> --verbose

示例
就是把validate替换成upload

上传成功

No errors uploading '/Users/macbookpro/317hu.ipa'

通过xcrun altool命令可以查看使用altool的命令

获取密钥ID和issuer ID下载API秘钥

步骤:点击用户和访问 > 秘钥 > 生成秘钥

apiKey就是密钥ID apiIssuer就是Issuer ID 记得把API秘钥下载下来然后在用户目录新建一个private_keys文件把秘钥放进去,否则就会报错。

Could not find private key file: AuthKey_5ZGKY5BF7J.p8, in any of the following locations.
 ./private_keys or <user home>/private_keys or <user home>/.private_keys or <user home>/.appstoreconnect/private_keys
 以下任何位置找不到私钥文件:AuthKey_XXXXX.p8。  
./private_keys或<用户主目录> / private_keys或<用户主目录> /。private_keys或<用户主目录> /。appstoreconnect / private_keys

还可以通过账号密码进行验证上传不过因为现在开启了双重验证可能麻烦点就没弄。