作者:Jamie,腾讯开发工程师,在 iOS 预审和 ASO 优化领域从事专项测试相关工作,为腾讯游戏近 100 个产品提供专项服务。
商业转载请联系腾讯 WeTest 获得授权,非商业转载请注明出处。

WeTest 导读
众所周知,苹果应用商店是苹果公司提供给开发者发布和用户下载应用软件的地方,苹果为了给开发者和用户创造一个良性、公平、健康、安全的应用商店环境,制定了一系列的应用商店审核条款,所有应用必须遵循这些条款,才能获得发布上架。不可否认,应用审核在一定程度上保证了应用商店的品质,但对众多开发者来说,应用上架苹果商店,往往是一段忐忑甚至是悲壮的旅程,经常被苹果的各种理由拒之门外,让开发者苦不堪言。本文将介绍腾讯预审团队一系列的预审策略和方法,让大家了解腾讯是怎样保障提审通过率的。

iOS 预审开展思路
最近,苹果在官网给出了截至 2016 年 6 月份应用被拒绝的十大条款(其中 63% 以上的应用被拒绝都是因为这 10 个条款),看似简单的条款,仍然出现很多提审被拒,其实,开发者对审核条款理解和把控不够系统,是导致提审被拒的主因。

那么,看似让人眼花缭乱的审核条款,我们有没有什么办法准确和系统的去把握呢?对此,腾讯预审团队从 2014 年便开始尝试一系列的探索和积累:
分析《苹果应用商店审核指南》的条款,结合过往提审被拒的案例,进行系统的测试设计,并输出成可落地的测试用例;
在以上步骤的基础上,进行自动化分析,抽离出可自动化的模块(开发对应的自动扫描工具);
将剩余的部分用例,组建专项的测试人员来进行验收;
App 每次版本提审,通过以上测试验收后,才会正式提交给苹果审核;

腾讯预审的探秘
根据以上工作思路,腾讯预审团队对审核对象进行模块的划分,主要包含 ipa 包、提审资源以及应用内容和功能 3 大模块(一共整合了 150+ 个测试点及测试用例,其中自动化扫描项 70+ 个):

ipa 包的检查
主要是确保 ipa 中 info.plist、包/文件大小、icon 规格、私有 API、第三方 SDK、64 位等内容符合苹果要求,此部分的验收,腾讯预审团队已开发出自动化工具,通过自动扫描来完成;

提审资源的检查
主要是确保提交的应用截图、视频、AppIcon、应用描述等资源是符合苹果要求的,其中资源规格属性的验收,预审团队已开发出自动化工具,通过自动扫描来完成;但资源的内容、文案等部分内容的验收,还需要人工来审查;

应用内容和功能的检查
确保应用的内容满足苹果审核审核指南中安全、性能、设计、法律等章节的条款,通常需要覆盖安装、登录、IAP 支付、公告、活动、邮件、icloud 文件存储、美国 *** 网络连通性、IPv6 网络连通性等应用场景内容和功能,此部分的验收,全需要人工来审查;
除此之外,预审团队通过实时跟进苹果审核动态,依此来不断的更新和完善验收方案,持续保障产品的提审通过率,得到越来越多产品的认可,截止到今年 7 月,服务 App 产品已累计 100+ 个,每月完成的转测次数 120+ 次。在 2016 上半年的提审数据统计可见,尽管有 IPv6、提审图片/视频等政策变更的冲击,提审通过率仍旧保持在 85% 以上,体现了预审方案的工作成效:

各模块被拒的占比,详情如下图:

在以上被拒的数据统计中,可以发现,更多的是在游戏功能、内容和提审材料的内容,而 ipa 包和提审资源规格部分被拒的次数占比很少,自动化工具带来的质量和保障也得以体现。

预审测试内容解读
1、Ipa 包检查的介绍
Ipa 包检查项主要包含以下几方面,如 info.plist、私有 API、第三方 SDK、64 位、icon 文件等等,其中几个重要扫描规则我们将逐一进行介绍:

1.1 Info.plist 检查
Info.plist 是一种结构化的文本文件,通常所说的 “属性列表”,iOS 的 app 都使用 Info.plist 文件来存储元信息,用来实现决定 bundle 所显示的 icon,当前 app 支持打开的文档类型,服务声明等等。关于此部分扫描规则,来源于《Information Property List Key Reference》,包含如下方面的内容:

1.2 Icon 检查
苹果官方对 iPhone、iPad、iPod 等应用程序的 icon 有明确的要求:要求 ipa 包中必须包含 180x180,120x120,76x76,152x152,167x167 尺寸的 PNG 格式的 icon(详见下表),并且不同尺寸的 icon 内容要一致,关于此部分的扫描规则,来源于《iOS Human Interface Guidelines》:

关于 App icon 的检查,采用自动化方法实现自动解压 ipa 包,并逐一核实 icon 图标是否存在并满足要求,对于不满足要求的 ipa 包,给出告警提示:

1.3 私有 API 检查
私有 API 和 non-public API,是苹果明令禁止的条款,每次预审都会重点跟进这部分的扫描结果。关于这块自动化的思路,在之前分享的一些文章中也曾提过了,主要是采用一些反编译工具,对 ipa 的可执行文件进行反编译解析,获取头文件中库、方法和类的集合,再去逐一比对私有库和 non-public 库,如有命中则给出告警提示:

1.4 文件大小检查
此部分扫描内容,主要包含 ipa 包的大小、可执行文件的正文段大小和包中每个文件的大小三个方面:

扫描如有不满足项,则给出告警提示:

2、提审资源检查的介绍
提审资源包含提审图片、提审视频和应用介绍三部分,苹果对提审资源要求,主要是两方面:规格属性和内容,对于前者,预审是通过自动化来验收,而后者则是通过人工来审查的。

提审资源规格属性的扫描规则,来源于《iTunes Connect Developer Guide》,预审当前主要覆盖以下几方面的内容:

对于不满足要求的资源,则给出告警提示:

提审资源的验收规则,来源于《iTunes Connect Developer Guide》和《App Store Review Guidelines》,预审主要覆盖以下几个方面内容:

每一种分辨率的视频,必须是在对应分辨率的真机上录制生成,不能采用拉伸、剪裁、填充等方式处理生成(如在 iPhone5 设备上录制的视频,通过拉伸的处理方式,生成 iPad 分辨率的视频)。

经典案例
【案例 1】
《项目 A》x.17.5 版本,提审图片不能真实反应 App 的内容,导致被拒。

【应对措施】
图片中尽量避免提供与应用无关的内容,要表现出应用的真实内容,尤其是游戏类应用的截图,需体现游戏场景、画风、特色玩法等。针对此问题,产品修改并通过苹果审核的图片如下:

【案例 2】
《项目 B》x.1.10 版本,视频中出现手机设备、并且存在游戏中没有的内容,宣传成分太多,因此被拒。

【应对措施】
在苹果真机设备上录制应用的真实内容,尽量避免加入广告、特效等宣传成分的内容。

3、应用内容和功能检查的介绍
苹果针对应用内容和功能的审核,往往会比较严格,如果其中一点不满足条款便会拒绝版本,因此,大家需要熟记每个审核要点,同时也尽量要遍历应用功能。在遍历功能时要注意重要机型和固件的适配,尽量在最新的 iPhone 和 Pad(如应用不支持 Pad,可以忽略),固件也尽量是最新的版本。对于特殊时间段,比如在秋季新系统发布前,要提前摸底 beta 版本兼容性,避免新系统发布时出现不可预知的兼容性问题,阻塞版本的提审节奏。

近期苹果要求 App 兼容 IPv6 网络(6 月 1 号以后上架/更新的 App,必须兼容 IPv6),因此,提审前需确保应用在 IPv6 网络下可正常登录(IPv6 网络可按照苹果官网提供指导进行部署)。除此之外,美国网络也不能忽视。因为苹果的审核团队在美国,他们进行审核时,使用的是美国网络,跨洲际的网络连接,难免会出现时延大、抖动、丢包等网络问题,为了提前验证 App 后台服务器基于此场景下的反应,美国来模拟苹果审核团队的访问 App,可以提前爆露一些问题。
预审对这部分的验收,主要是包含以下两个模块:
文字内容的检查
主要检查应用中的公告、活动、提示,游戏类的邮件、新手指引、剧情对白等,同时还覆盖应用中链接的官网、论坛等网页内容,确保文字内容是满足苹果审核的相关条款;

应用内容的检查
主要覆盖应用中的图片、动画、视频、游戏的角色造型/PVE/PVP 等场景界面,确保以上内容满足苹果审核的相关条款;

预审总结
以上便是 iOS 预审主要的工作思路,核心思想是围绕《苹果应用商店审核指南》来开展验收工作,同时也在实时跟进苹果审核政策的动态,来确保预审的方向和质量。

自动化扫描工具介绍-WeTest
为了提高 IEG 苹果审核通过率,腾讯专门成立了苹果审核测试团队,打造出 iOS 预审工具这款产品。经过 1 年半的内部运营,腾讯内部应用的 iOS 审核通过率从平均 35% 提升到 90%+。

现将腾讯内部产品的过审经验,以线上工具的形式共享给各位。在 WeTest 腾讯质量开放平台上可以在线使用。
点击链接http://wetest.qq.com/ios/即可立即体验!

iOS 预审工具分四步进行预审服务
【一键扫描】
只需提供 ipa 包、审核图片、审核视频、应用描述,即可在 4 小时内拿到一份完整的检测报告,定位问题的同时提供解决方案,助您成功通过审核。
【案例分享】
集结 iOS 审核失败常见原因,丰富案例为您提供参考依据。
【专家服务】
腾讯专家团队为您分析各种疑难杂症,提出最优解决方案。
【ASO 优化】
专业优化 AppStore 内关键字搜索结果,让产品离用户更近一步。
希望 App/手游在预审验收保证下,都可以快快乐乐过审,开开心心赚钱。


关于腾讯 WeTest
腾讯 WeTest 是腾讯游戏官方推出的一站式游戏测试平台,用十年腾讯游戏测试经验帮助广大开发者对游戏开发全生命周期进行质量保障。
腾讯 WeTest 提供:兼容适配测试;云端真机调试;安全测试;耗电量测试;服务器压力测试;舆情监控等服务。


↙↙↙阅读原文可查看相关链接,并与作者交流