游戏-IPA包上传报错

一、上传ipa到appstore报错

报错提示:
ERROR ITMS-90023:

截图

image.png

分析:根据报错信息看,初步可以看到是说没有76x76、152x152、167x167规格的图片导致上传出错。但实际上,我的ipa是已经包含了这三张图片的。
解决办法:参考:https://blog.csdn.net/yohunl/article/details/78065656
具体:利用xcode的Archive,然后show in finder 找到 .xcarchive文件 。然后显示包内容,在当前包内容的文件夹下,执行终端命令:

find Products/ -name Info.plist -print0 | xargs -0n1 plutil -replace BuildMachineOSBuild -string 16A323

显示包内容,包含这四个文件:


image.png

二、Xcode11 上传IPA
xcode11 不自带Application Loader了,苹果官方文档推荐使用altool 工具上传ipa
1、检查mac是否支持altool

xcrun altool
image.png

说明是支持的

2、
altool只是一个上传工具,而非打包工具
用到的2个命令

$ altool --validate-app -f  -t  -u  {[-p ] | --apiKey  --apiIssuer }
以及
$ altool --upload-app -f  -t  -u  {[-p ] | --apiKey  --apiIssuer }

例如:

$ xcrun altool --validate-app -f 包的绝对路径 -t ios -u 你的苹果账号 -p 你账号对应的密码

报错:


image.png
这个的大意就是说你的我们现在采用了新的验证方式,不是你输入的密码不对,而是你需要用上面命令中的--apiKey --apiIssuer ,其实你如果用过Application Loader就能想明白为什么非要用这两者了,因为Application Loader没法做二次验证所以,Application Loader需要的密码是你自己登陆账号创建的,而你登陆账号相当于经过了二次验证,同理altool本身是没法二次验证的,所以他需要你去创建一套密钥来验证你的身份,那么这个在哪里创建呢?答案是在app store connect 里面"用户和访问"->密钥->App Store Connect API,如下图所示

在这里


image.png

再执行命令:


image.png

报错:


image.png

原因:


image.png

解决办法:
下载那个.p8的文件,然后在根目录下,创建一个private_keys文件夹,如果本来有这个文件夹,就不需要创建!
去到根目录:


image.png
cd ~
mkdir .private_keys
image.png

把下载的那个.p8文件拖到private_keys文件夹内:


image.png

再执行命令:


image.png

看到这个,说明没问题了。

然后上传ipa包到商店后台

$ xcrun altool --upload-app -f 包的绝对路径 -t ios --apiKey 密钥的ID --apiIssuer Issuer ID
image.png

上传成功了

你可能感兴趣的:(游戏-IPA包上传报错)