app被苹果拒之门外的9个意外原因

2013-02-11 09:24:02来源:36氪作者:

苹果应用商店的审核流程是为了确保生态体系的健康,将低质量和恶意的应用排除在外。总体而言,这种做法是行之有效的。可是有时候应用被拒的原因有些令人莫名其妙,以下是Xamarin的联合创始人及CEO
Nat Friedman总结

苹果应用商店的审核流程是为了确保生态体系的健康,将低质量和恶意的应用排除在外。总体而言,这种做法是行之有效的。可是有时候应用被拒的原因有些令人莫名其妙,以下是Xamarin的联合创始人及CEO
Nat Friedman总结的9个拒绝理由。

1.“beta”是敏感词

Google把发布模糊的“beta”服务变成行业惯例,但是苹果对此却要求严格。如果应用名字里面有“Beta”、“Preview”甚至“0.9版”之类表明应用尚未准备就绪的词语,那应用就有可能被拒。

2.加载时间过长

所有移动操作系统(iOS、Android甚至Windows)都对启动时间有要求。iOS的最高启动时间是15秒,如果应用不达标,OS会把它干掉。

但是,哪怕应用在本地测试时启动时间符合要求,网络慢、硬件慢等不同的环境因素也可能导致应用在接受审核时启动过慢。因此不要仅仅依赖iOS模拟器,要在实际硬件中对应用进行测试,最好拿一些老一点的手机去试,这样才能确保所有用户的启动时间符合要求。

请记住,应用的启动时间是给用户留下印象的第一个机会。

3.链接到外部支付方式

苹果要求所有的数字内容都要在内置的iTunes元以内销售机制中售卖。无论是一次性购买或者订购模式均如此。违反这一原则,应用必被毙掉无疑。Kindle应用不允许用户购买新书的原因也是如此。

有一点值得注意,苹果甚至连应用中有到外部支付机制的网页链接也不行。比较出名的例子是Dropbox—因为其基于web的登录屏幕含有购买额外空间的连接而被拒。而且受影响的不仅仅是Dropbox应用,甚至使用Dropbox SDK的也遭了殃。

因此,一定要确保应用的所有购买都是通过iTunes账号进行的。不过,非数字服务或商品属于例外,比方说通过应用订房就可以。

4.不要提支持其他平台

如果你的应用也支持Windows或Android,在你自己的网站上面说,不要在应用或应用商店上提,如果上面出现竞争对手的名字,苹果会很生气。

5.本地化问题

应用的用户是全球性的。如果应用没有针对多种语言进行本地化,那会显得比较业余。利用NSNumberFormatter或Invariant Culture 之类的扩展以及模拟器来测试不同地方的用户体验,从而确保日期等数据符合用户所在地区。

比方说曾经有欧洲的应用因为不能处理负值的经纬度而被拒。

6.存储与文件系统的不当使用

iOS 5.1发布不久,苹果曾经拒绝了某个应用的更新,因为开发者将2MB的数据库加压到文件系统中,违背了iCloud只备份用户生成内容的原则。

任何可再生或可从远程服务器重新下载的数据都不应该备份。非用户数据最好找个缓存的地方,或者标记为“不备份”属性。

7.因为用户拒绝授权而崩溃

在iOS 6中,只有用户许可后用户才能访问地址簿、图库、方位、日历、蓝牙、Twitter及Facebook的账号。如果用户选择禁止应用访问这些服务,那么应用的功能就有可能运行不正确。而功能运行不正确会引起苹果自动拒绝应用通过。开发者应该测试用户“允许”和“不允许”使用各种数据的情况,包括用户一开始允许后面有改为不允许的情况,确保应用在各种情况下都能运转正常。

8.图标、按钮使用不当

许多iOS应用被拒往往不是因为性能或功能问题,而是因为UI方面的小毛病。需熟知《苹果人机界面指南》,可利用标准的UIButtonBarSystemItem来要确保内置图标和按钮外观风格统一。

比方说,不要把“排版”图标用到非内容创作的应用上。苹果工程师希望应用的行为是可预测的,因此对这方面加以限制也是可以理解的。

9.误用商标和标志

不要在应用或产品图片中使用商标或苹果图标、标志。甚至画有iPhone的图标也不能用。应用的关键字含有商标的应用也曾被拒过。

不过被拒了也别慌,改正问题重新提交就是了。在紧急情况下,苹果还有加急的审核流程,可适用于关键bug修补或者安全问题。不过这一流程也不要滥用,否则你的应用从此会被苹果拒之门外。

未雨绸缪总好过亡羊补牢。请仔细研究提交指南,把精力投入到开发高品质的应用上。用户会感激你的。

关键词:苹果app

赞助商链接: