一、一波三折的续费
最近公司开发的苹果APP的SSL证书到期了,计划重新发布一下该APP,已替换即将到期的SSL证书。近几年随着钉钉、企业微信等在线办公软件超级平台的出现,各企业都会选择其中一个平台作为本企业的移动办公平台,其他系统都与该平台集成,所以最近几年使用单独的APP开发移动办公软件的企业越来越少了,基于此公司的苹果账号在之前快到期的时候,就没有在续费,所以后来有一段时间公司的账号处于欠费状态,这次要发布APP,首先需要缴费以激活苹果开发者账号,登录developer.apple.com后,显示的是"Learn More",而不是"Renew Membership",如下图:
点击"Learn More",跳转到如下页面,提示要安装Apple Developer app,如下图:
于是在手机上下载了"Apple Developer",然后点击"Sign In"登录,提示必须开启双重认证(大家可以自行百度开启双重认证的方法),于是开启了双重认证,认证通过以后,点击”Enroll Now"进行验证,进行验证,这时一个同事说,咱们公司注册这个账号的时候,好像但是没有刷过脸进行认证,我刷一下我的脸认证一下,看看能否通过,一刷脸认证没有通过,同时"立即验证证件"变成灰色了,无法继续验证,如下图:
这下没有办法,继续联系苹果客服,首先是申请电话沟通,申请以后,说10分钟以内给回电话,结果迟迟未回,于是给苹果客服发了个信息,描述了一下碰到的问题,留了本人的电话,第二天,苹果客服给回了个电话(必须找账号本人进行验证),说了一些怎么验证的问题,然后把"未能验证证件"的状态给重置为"立即验证证件",于是找到账号所有人,进行了一些验证(主要包括姓名、身份证号、电话、人脸识别、住址),验证通过以后,打开developer.apple.com登录,显示"Renew Membership",想终于可以交费了,点击"Renew Membership",跳转显示"The page you’re looking for can’t be found.",于是再次百度,有人说是账号与认证信息不一致的问题,通过短信息再次联系苹果客服,等待第二天的电话,结果一直没有回,于是再次打开developer.apple.com,然后点击"Renew Membership",直接跳转到了缴费登录界面,输入信息,至此苹果开发者账号缴费完成。
二、曲折的发布历程
接下来就是发布APP的问题了,由于之前开发的时候使用的是XCode9.3发布的,现在苹果要求使用最新的XCode11.3才可以向苹果商店提交APP,于是升级了一下操作系统及XCode,升级完成以后,编译提示"Library not found for -lstdc++6.0.9",这个是由于升级到XCode11.3以后,原来的类库不再使用,需要从原来的XCode9.3下拷贝相应的类库,到现在下面,大家可以参考如下网址:
网址一、https://www.jianshu.com/p/7f0af489a307
网址二、https://blog.51cto.com/14357084/2402307?source=dra
网址三(相应的类库):https://github.com/devdawei/libstdc-
切忌主要要清楚一下缓存,中间因为没有情况缓存,导致有浪费了好长时间解决该问题,替换以后,编译进行发布,根据苹果官方提供的发布方法,主要有一下三种方式,如下图:
首先通过XCode直接上传,结果一直处于“Authenticating with the App Store ”转态,尝试了多次,一直无法上传成功,于是换成Transporter APP进行上传,提示 “正在验证 APP - 正在通过App Store进行认证…”,尝试了好多方法,还是不行,于是使用altool进行上传,使用命令:
xcrun altool --validate-app -f ipa文件路径 -t ios -u username -p password,给出错误提示如下图:
于是又看了看,altool命令,发现还可以使用命令:xcrun altool --validate-app -f ipa文件地址 -t ios --apiKey xxxxxxxx --apiIssuer xxxxxxxx,接下来就是创建apiKey与apiIssuer及PrivateKey的过程了,首先登陆developer.apple.com,跳转到https://appstoreconnect.apple.com,如下图:
点击"用户和访问",跳转到界面如下图:
点击"+",弹出秘钥创建界面,如下图:
输入相应的名称,访问选择管理,然后点击创建,至此创建完成,秘钥ID就是apiKey,Issuer ID就是apiIssuer
(也可以见网址:https://blog.csdn.net/CDD_WYR/article/details/101434154)
私钥只能下载一次,下载以后保存到用户根目录的private_keys,否则会报如下图错误:
完成以后,使用altool首先验证该ipa,验证命令如下:
xcrun altool --validate-app -f ipa文件地址 --apiKey xxx --apiIssuer xxx,验证过程中提示如下错误:
错误一是说APP ICON缺少一张1024X1024的照片,错误二、三、四是说现在发布的版本不符合要求,
下载一个"App Icon & Splash Kit",生成App Icon的所有图标,打开XCode,点击“App Icons Source“右侧的箭头图标,设置App Icon,如下图:
把相应的图片拖到相应的位置就可以了(小插曲,我在App Icon图标以后,总是提示找不到1024X1024的图标,没有办法把原来的AppIcon删除,重新安装商品的操作设置App Icon,再次进入发现确实少1024X1024的图标)
验证通过以后,返回"No errors validating archive at ‘/Users/soft/Desktop/xxxx.ipa’",表示验证通过,接下来使用altool命令上传,上传命令就是把验证命令的validate修改为upload就可以了,命令如下:
上传了两次,一次一晚上,一次两个小时,一直无法上传成功,最后再次百度,使用appuploader工具上传了,
10分钟搞定,apploader上传比较简单,官网介绍的笔记清楚,其中碰到一个小错误提示就是app-specific password设置的问题,由于没有设置,导致上传的时候出现错误:”Please sign in with an app-specific password. You can create one at appleid.apple.com“,大家可以参考网址:http://www.applicationloader.net/blog/en/2641.html解决。
三、小结
最后针对本次从续费到发布成功的整改过程总结评价,从两个方面来说:
一、苹果网站及苹果开发好的方面有两个:
1、苹果的帮助文档写的比较全
2、客户短信息回复比较及时,但是电话回访一般,有待提高。
二、苹果网站及苹果开发有待提高的方面有三个:
1、网站访问速度非常忙,用户体验不好
2、账号验证、续费流程太过复杂
3、ipa上传的三只方式非常慢,有很大改进的空间