商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。
最近,苹果在官网给出了截至2016年6月份应用被拒绝的十大条款(其中63%以上的应用被拒绝都是因为这10个条款),看似简单的条款,仍然出现很多提审被拒,其实,开发者对审核条款理解和把控不够系统,是导致提审被拒的主因。
那么,看似让人眼花缭乱的审核条款,我们有没有什么办法准确和系统的去把握呢?对此,腾讯预审团队从2014年便开始尝试一系列的探索和积累:
分析《苹果应用商店审核指南》的条款,结合过往提审被拒的案例,进行系统的测试设计,并输出成可落地的测试用例;
在以上步骤的基础上,进行自动化分析,抽离出可自动化的模块(开发对应的自动扫描工具);
将剩余的部分用例,组建专项的测试人员来进行验收;
App每次版本提审,通过以上测试验收后,才会正式提交给苹果审核;
根据以上工作思路,腾讯预审团队对审核对象进行模块的划分,主要包含ipa包、提审资源以及应用内容和功能3大模块(一共整合了150+个测试点及测试用例,其中自动化扫描项70+个):
ipa包的检查
主要是确保ipa中info.plist、包/文件大小、icon规格、私有API、第三方SDK、64位等内容符合苹果要求,此部分的验收,腾讯预审团队已开发出自动化工具,通过自动扫描来完成;
主要是确保提交的应用截图、视频、AppIcon、应用描述等资源是符合苹果要求的,其中资源规格属性的验收,预审团队已开发出自动化工具,通过自动扫描来完成;但资源的内容、文案等部分内容的验收,还需要人工来审查;
除此之外,预审团队通过实时跟进苹果审核动态,依此来不断的更新和完善验收方案,持续保障产品的提审通过率,得到越来越多产品的认可,截止到今年7月,服务App产品已累计100+个,每月完成的转测次数120+次。在2016上半年的提审数据统计可见,尽管有IPv6、提审图片/视频等政策变更的冲击,提审通过率仍旧保持在85%以上,体现了预审方案的工作成效:
各模块被拒的占比,详情如下图:
在以上被拒的数据统计中,可以发现,更多的是在游戏功能、内容和提审材料的内容,而ipa包和提审资源规格部分被拒的次数占比很少,自动化工具带来的质量和保障也得以体现。
Ipa包检查项主要包含以下几方面,如info.plist、私有API、第三方SDK、64位、icon文件等等,其中几个重要扫描规则我们将逐一进行介绍:
Info.plist是一种结构化的文本文件,通常所说的 “属性列表”,iOS的app都使用Info.plist文件来存储元信息,用来实现决定bundle所显示的icon,当前app支持打开的文档类型,服务声明等等。关于此部分扫描规则,来源于《Information Property List Key Reference》,包含如下方面的内容:
苹果官方对iPhone、iPad、iPod等应用程序的icon有明确的要求:要求ipa包中必须包含180x180,120x120,76x76,152x152,167x167尺寸的PNG格式的icon(详见下表),并且不同尺寸的icon内容要一致,关于此部分的扫描规则,来源于《iOS Human Interface Guidelines》:
关于App icon的检查,采用自动化方法实现自动解压ipa包,并逐一核实icon图标是否存在并满足要求,对于不满足要求的ipa包,给出告警提示:
私有API和non-public API,是苹果明令禁止的条款,每次预审都会重点跟进这部分的扫描结果。关于这块自动化的思路,在之前分享的一些文章中也曾提过了,主要是采用一些反编译工具,对ipa的可执行文件进行反编译解析,获取头文件中库、方法和类的集合,再去逐一比对私有库和non-public库,如有命中则给出告警提示:
1.4 文件大小检查
扫描如有不满足项,则给出告警提示:
提审资源包含提审图片、提审视频和应用介绍三部分,苹果对提审资源要求,主要是两方面:规格属性和内容,对于前者,预审是通过自动化来验收,而后者则是通过人工来审查的。
提审资源规格属性的扫描规则,来源于《iTunes Connect Developer Guide》,预审当前主要覆盖以下几方面的内容:
对于不满足要求的资源,则给出告警提示:
提审资源的验收规则,来源于《iTunes Connect Developer Guide》和《App Store Review Guidelines》,预审主要覆盖以下几个方面内容:
【案例1】
《项目A》x.17.5版本,提审图片不能真实反应App的内容,导致被拒。
【应对措施】
图片中尽量避免提供与应用无关的内容,要表现出应用的真实内容,尤其是游戏类应用的截图,需体现游戏场景、画风、特色玩法等。针对此问题,产品修改并通过苹果审核的图片如下:
【案例2】
《项目B》x.1.10版本,视频中出现手机设备、并且存在游戏中没有的内容,宣传成分太多,因此被拒。
【应对措施】
在苹果真机设备上录制应用的真实内容,尽量避免加入广告、特效等宣传成分的内容。
苹果针对应用内容和功能的审核,往往会比较严格,如果其中一点不满足条款便会拒绝版本,因此,大家需要熟记每个审核要点,同时也尽量要遍历应用功能。在遍历功能时要注意重要机型和固件的适配,尽量在最新的iPhone和Pad(如应用不支持Pad,可以忽略),固件也尽量是最新的版本。对于特殊时间段,比如在秋季新系统发布前,要提前摸底beta版本兼容性,避免新系统发布时出现不可预知的兼容性问题,阻塞版本的提审节奏。
近期苹果要求App兼容IPv6网络(6月1号以后上架/更新的App,必须兼容IPv6),因此,提审前需确保应用在IPv6网络下可正常登录(IPv6网络可按照苹果官网提供指导进行部署)。除此之外,美国VPN网络也不能忽视。因为苹果的审核团队在美国,他们进行审核时,使用的是美国网络,跨洲际的网络连接,难免会出现时延大、抖动、丢包等网络问题,为了提前验证App后台服务器基于此场景下的反应,美国VPN来模拟苹果审核团队的访问App,可以提前爆露一些问题。
预审对这部分的验收,主要是包含以下两个模块:
文字内容的检查
应用内容的检查
主要覆盖应用中的图片、动画、视频、游戏的角色造型/PVE/PVP等场景界面,确保以上内容满足苹果审核的相关条款;
以上便是iOS预审主要的工作思路,核心思想是围绕《苹果应用商店审核指南》来开展验收工作,同时也在实时跟进苹果审核政策的动态,来确保预审的方向和质量。
为了提高IEG苹果审核通过率,腾讯专门成立了苹果审核测试团队,打造出iOS预审工具这款产品。经过1年半的内部运营,腾讯内部应用的iOS审核通过率从平均35%提升到90%+。
现将腾讯内部产品的过审经验,以线上工具的形式共享给各位。在WeTest腾讯质量开放平台上可以在线使用。点击链接:http://wetest.qq.com/ios/即可立即体验!
希望App/手游在预审验收保证下,都可以快快乐乐过审,开开心心赚钱。