为了适配ios13,特意更新了xcode11.3 。更新完后发现 application loader没有了,然后蒙了。
然后网上一顿搜索,归纳出了三种上传方式:
一、altool
使用xcode中的命令方式上传
$ xcrun altool --validate-app -f file -t platform -u username [-p password] [--output-format xml]
$ xcrun altool --upload-app -f file -t platform -u username [-p password] [—output-format xml]
这种方式需要在https://appstoreconnect.apple.com/ ->用户和访问->密钥->创建密钥信息
1、记录issuer ID
2、创建密钥
3、记录密钥ID
4、下载密钥文件(文件只能下载一次,要保存好)
5、将下载的密匙文件(***.p8)复制到 ~/.private_keys/
6、使用命令上传
xcrun altool --upload-app -f *ipa文件路径* -t *要发布的平台:osx、ios 或 appletvos* --apiKey *密钥ID* --apiIssuer *issuer ID*
7、正常的情况下在10分钟内命令会有操作结果(不管成功还是失败),如果长时间没有返回结果,那就是有问题。
8、常见问题
a、密匙文件没有复制到~/.private_keys/,提示文件找不到,altool有默认查询密匙文件的路径
b、ipa文件找不到,需要确定当前执行命令的路径和ipa文件路径是否能匹配
c、如果长时间没有返回结果,则本地~/.itmstransporter/ 的文件版本不匹配,解决方案:
执行命令
cd ~
mv .itmstransporter/ .old_itmstransporter/
"/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin/iTMSTransporter"如果本地找不到 Application Loader.app,需要先安装 Application Loader.app。网盘地址如下:
链接: https://pan.baidu.com/s/1aGhl8M05lqehbj84XrDBIA 提取码: rsn6
安装后,在应用程序中找到
Application Loader,右键显示包内容,找到 Contents/itms/bin/iTMSTransporter ,打开运行。- 运行结束后,在 ~/.itmstransporter/ 会有新下载的文件
- 成功后,重启电脑,再次执行
xcrun altool --upload-app -f *ipa文件路径* -t *要发布的平台:osx、ios 或 appletvos* --apiKey *密钥ID* --apiIssuer *issuer ID*
二、Transporter app(未测试成功)
- 通过 macOS 版 Transporter App,您可以便捷地将 App 上传至 App Store Connect 以便在 App Store 上分发。除了上传构建版本,您还可以查看交付进度(包括警告、错误和交付日志)以及交付历史。
- 您可以在 Mac App Store 中下载 Transporter App。
- 有关更多信息,请参见“macOS 版 Transporter 帮助”。
遇到的问题:
- 提交ipa后,一直卡在验证环节,长时间没有响应
- 没有任何错误提示
三、xcode上传(适合通过xcode直接打包上传)
- Xcode 是 Apple 的集成开发环境(IDE)。Xcode 可用于为 Apple 产品(包括 iPad、iPhone、Apple Watch、Apple TV 和 Mac)构建 App。Xcode 提供诸多工具,能帮助您管理整个开发工作流程——包括创建、测试、优化 App 并将其提交至 App Store。
- 若要了解如何通过 Xcode 上传您 App 的二进制文件,请前往“Upload an app to App Store Connect(上传 App 至 App Store Connect)”,或者在 Xcode 中选择“Help(帮助)”>“Xcode Help(Xcode 帮助)”并搜索“Upload an app(上传 App)”。
- 请在 Mac App Store 中下载 Xcode。