BUAAZP.

百度Hi iPhone版的心酸上线史

June 13, 2014

百度Hi iPhone版的心酸上线史

@招牌疯子

今天翻看项目文档,Hi iPhone版一共做了五个排期,从第一版的6月1号内测,到第五版的6月25号内测,总共只延期了不到半个月,不得不说是一个奇迹。然而后面经历了长达三个月的appstore审核之路,让前面的辛苦变得一文不值。

实话实说,这个项目最大的困难来自团队内部,产品定位的原因导致队伍极小,基本都是兼职,在繁杂的开发过程中,后端同事又突然离职,甚至产品还没发布,团队成员已经被分发到了别的项目组。到今天正式上线appstore,终于算是功德圆满,对Hi项目是有感情的,因为曾经那群优秀的同事,和曾经那段快乐的时光。

接下来说一说跟苹果的斗争史吧,由于这是我们第一次做iOS产品,大家都没有什么经验,在没做完之前就一直关注appstore的审核问题,前人报出来的经验和教训,我们也是都列出来仔细检查了,谁能想到,由于这样那样的原因,还是多次被拒,不堪回首。

第一次,是因为提交的测试账号的问题。Hi iPhone版我们沿用了之前IM团队留下来的测试账号,大约有几十个,提交审核的时候给了苹果两个联系人和群数量适中的,其中一个账号的好友个性签名中出现了安卓字样,竟然因为出现竞争对手的名字而被拒,我等真是欲哭无泪,只能再注册新号,每个号里只有一个好友去提交。

第二次被拒,是因为产品需求希望Hi可以保持后台在线,这样用户切出去打个电话啥的切回来还能继续聊天,不至于给他的好友造成频繁上下线的困扰。为了实现这个功能,我们选择使用voip的机制来保持,苹果以该产品不是voip产品为由拒掉。那这次则完全是我们自己的原因了,我还清楚地记得当时大周五的收到拒信,PM整体去青岛旅游了,在火车上打电话各种断线,果断周末加班修改,就是为了能让苹果的人下周一上班就能排上队。

下面简单总结一下iOS审核的经验和tips,其中有些东西也来自后来参与的其他产品,想想都是眼泪。

首先,苹果的给的官方App Store审核指南一定要详细研读,深刻理解,只要是人家提到不让你干的,你千万别干;人家没有说不让的,你也要谨慎,问问论坛上的大神们,看看别的产品的总结们,总之这东西就是圣旨,不要心存侥幸,最好是根据审核指南做出一份checklist每次提交的时候都检查一遍。

然后是产品第一版,一定要精简功能,只要满足最基本的需求即可,不是我们做不了,而是你做的越多,越容易被他们挑出刺来。说句难听的,企业开发者提交的应用,我还没听说过那支是一次通过的,苹果对企业开发的产品,肯定是不友好的。如果有一次通过的,也请下面留言方便交流经验啊。与之类似,提交的测试账号之类也要越简单越好,免得重蹈我们的覆辙。

第一版审核最难,更新相对要容易一些,所以更多的功能放到升级版本里去。

任何应用里的和宣传用的图片文案,都不能出现苹果、安卓的图标和字样,否则绝对被拒,这一块苹果查的很严。我们的另一款跨平台应用由于为ipa格式的文件设计了漂亮的图标,包含了一个隐约的苹果图案,也被无情地打回。

与苹果自有功能类似或者相同的东西,更要千万谨慎。某网盘产品审核过程中,因为功能与iCloud相似被Metadata Rejected。这里要注意,Metadata Rejected其实就是Rejected,只不过不是让你改代码。而他们所提问的问题,你一定要如实回答,比如“Is there additional charge for mobile access?”,即使你的应用是免费的,也一定要说明白运营商可能会收取部分流量费。如果你确实包含付费功能,千万不要指望引导用户去你的网站付费,苹果的手续费你是一定要给的。曾经看到有人把付费功能先关闭然后提交审核,审核通过后再后台打开付费链接,我当然是不建议这样做了,被查到之后会死的很惨。

再一点,每次被拒之后重新提交,都会重新进入等待队列里,至少两个星期才会变成In Review。所以,在如今这个唯快不破的移动互联网市场,任何需求在两周的等待时间面前都是浮云,只要能通过审核,需求该改的就果断改,该砍的也果断砍掉。再漂亮的功能,上不了线用户看不到,难道不都是白搭吗。

每个产品都有且只有一次申诉的机会,而且必须是在被拒之后才能使用。这个机会仿佛是一个插队卡,你用了就可以跳过两周的等待期直接In Review,所以这个机会一定要用在最紧急,价值最大化的时候。比如为了配合运营活动排期已经不允许等待时。但是正因为只有一次,使用的时候你一定要确保把能预见到的所有问题都解决掉了,否则就是严重的浪费。

然后是团队成员一定要有很强的执行力,一旦遇到reject,从需求到设计到代码到测试都要立刻行动起来,最快速度地完成修改并重新提交。

最后一条,苹果的审核人员也是人,而且不是同一个人,在别的应用里没问题的东西如果在你手里被拒了,你也不要抱怨,该怎么做还是怎么做,我们就是同一款产品的iPhone版没事,iPad就被拒了。而且正因为是人工在审核,每次与他们交流也要至情至理,回复邮件的时候要客气三分,最好找英文好的同学来写(我们是找的外援我会到处乱说吗),相信看到诚恳的回复,他们也会理解你的苦衷吧。

该说的能说的也就这么多了,跟苹果的斗争是永无止尽的,因为人家的设备、系统最重要的是生态圈做的太好了,这里不是你的地盘就只能听人家的。最后感谢所有付出辛苦努力的同学,并祝愿所有同行提交的应用都能最快速度通过。

招牌疯子

Coder, OpenSource, DataStorageEngineer. Work@ByteDance
开源爱好者,zimg作者,大规模数据存储工程师。