问题
最近提交审核上线的过程中遇到了一些很奇怪的问题,通过回溯整理,大致分了两大块:
1.通过XCode或者Appcation uploader 上传到app connect 中不显示构建版本问题
2.审核通过上线发布之后Appstore不能够搜索到当前审核通过的版本问题
遇到这样的问题,作为开发者简直要抓狂,辛苦完成的一个版本卡在最后的一个节骨眼上,捉急而且无奈。但是无奈归无奈,还是要想一些办法去解决的,以下是我这次解决以上问题的过程以及方法,希望给遇到同样的问题的小伙伴能够加以参考。
过程
通过
XCode
或者Appcation uploader
上传到iTunes connect
中不显示构建版本问题
一般在上线前,我们通常会build几个版本,并且会提交到苹果的审核后台,审核后台验证完成我们提交的二进制文件之后,会将构建的版本同步到我们的提交审核页面,然后再通过去勾选提交审核页面的build版本来选择我们所要审核的版本包。这个流程大致如下:
我们都知道,在提交审核上线包以后,苹果会做一个包内容的处理,这个处理主要是查看审核包里代码层面有没有对应的违规内容,验证通过就可以在提交审核的界面里面勾选通过的版本进行审核的提交了,如果不通过苹果也会通过邮件的形式告知开发者哪些违规了,总之会有一个处理结果告知我们。
按照这个流程,我通过XCode
以及Appcation uploader
进行版本文件上传,并且Xcode
以及 Appcation uploader
告知我我上传成功之后,在审核后台的活动页面起初能看到上传的版本处于正在处理中的状态,过了一段时间以后,这个版本居然再活动中奇怪的消失了,而且在提审的页面也没能见到构建版本,同时也没有收到任何邮件内容。所以后续我又陆续修改了好几个build版本号进行了上传,都是类似情况,最终都消失了。在此时如果上传同一个build版本的二进制文件的时候,Xcode 以及 Appcation uploader会报错告诉我们后台已经有了当前的构建版本,但是后台却看不到任何相关的内容(诡异的问题)。
这个时候我做了两件事:
1.发邮件告诉苹果build版本不能够显示的问题
2.想其他办法解决当前问题
一看到结果告诉我一两天时间才能回复,这根本来不及了,所以只能自己想办法了,刷新了一下页面,构建版本出现了,但是始终没有处理完成的意思,感觉像是卡住了一下,如下:
这个时候临时想出了一种解决方案,就是将iOS版本号由2.16.2版
本改为2.16.3版本
(因为苹果是依据版本号
来区分build版本包
的),这样在之前的2.16.2的buil版本包哪怕不处理也不应该会影响到2.16.3的版本构建
,可能会解决的问题,所以我尝试修改了项目的版本号为2.16.3,然后再次上传2.16.3的对应的build2.16.3.0版本上去,这次苹果那边处理居然有了响应而且很快显示验证通过了(无法解释),最后通过苹果审核提交页面后台勾选修改后的build版本来完成了本次版本的提交。
再提交审核的第二天苹果给我发来邮件,如下:
总结起来也就一句吧,意思就是说
构建的版本的处理时间在24小时之内(也就是一天),在这个时间内完成构建结果都是正常的。侧面意思就是说要给build构建版本留一天时间(如果超出这个时间还没有结果的话,构建一个新的版本)
。感觉有点不可思议,要知道之前提交审核的时候构建版本处理时间
都很快的,现在居然告诉我们一天时间,这是得有多无奈。
所以遇到这样的问题迟迟不能够处理完成的话,可以考虑一下按照我刚刚的那个方法,通过修改应用的版本号来解决build版本不能同步的问题。
审核通过上线发布之后
Appstore
不能够搜索到当前审核通过的版本问题
今天发现应用审核通过并且自动发布了,大概在早上6.多的时候,但是到了早上10点,应用商店还是迟迟搜不到当前版本的内容。
这个问题在网上也见有人提过,网上的解决方案是通过修改销售地区以及销售价格的变动来解决的。但是我没有尝试这么做,觉得这是苹果那边的机制问题,所以我又发了封邮件问了一下具体原因:
这个问题在我下班的那一刻苹果给了我回复,内容如下:
这里面有一个词叫做24小时缓存期
,也就是说,苹果在审核通过那一刻上线开始,真正上线当前版本到商店的时间为24小时以内(缓存期)
,所以如果你的应用审核通过那一刻开始仍然处于24小时缓存器以内的话,可能还是需要等待了。
总结
虽然说上架审核都是无脑操作,只需要提供相关的内容给苹果审核团队即可,但是在这个环节上出现了苹果后台不同步等抽风问题,就问你气不气。所以在开发提审的时候要给自己留够提审的时间,避免因为这些突发问题导致上线延期等不可控的情况的发生。