LayaNative打包iOS-APP过审经验分享!
众所周知,iOS包审核是众多开发者非常头疼的问题,甚至到了崩溃的边缘。据媒体统计,有近50%的项目曾被苹果拒绝。
对于HTML5项目,热更本是它的先天优势, BUG可随时修改,新功能更新毫无压力,给开发者带来了太多的便利。然而,热更功能对于iOS-App版本而言,违反了苹果App Store的规定,可能会导致无法审核通过。那么HTML5项目发布App版本该如何过审呢?
为了帮助广大开发者,我们将使用LayaAir引擎自研的游戏项目,通过LayaNative打包iOS-APP进行提审。然后把过审苹果App Store的经历与大家做一次分享。
1
我们曾在iOS-APP过审上的努力
早在2015和2016这两年里,Layabox自研的两款产品,《上吧主公》与《猎刃2》就已经成功的发布到App Store,成为了当时LayaNative打包APP的成功案例。
然而,2017年开始,随着苹果App Store审核越加严格,有一些开发者的项目开始出现审核无法通过的问题,向我们Layabox团队寻求帮助,LayaNative引擎组的同学们,在帮助开发者过审的期间,以及自研产品过审期间,也遇到了很多审核方面问题,甚至付费向第三方团队寻求过解决方案。总之,在不断的摸索过程中,我们总结了一条又一条的经验。
1
谣传: Layabox被苹果拉黑
伴随着苹果App Store过审越来越难,今年甚至开始流传了一个消息:“据苹果内部消息透露,Layabox被拉入黑名单了,肯定过不了审”。传言给人的感觉是消息来源很官方,于是不少屡战屡败,一直过不了审的开发者纷纷来找我们求证。
真的是这样吗?首先,我们告知各位开发者,例如《大天使之剑H5》、《一刀传世》、《消灭病毒》等等大量LayaAir引擎项目先后都通过LayaNative打包,并成功在苹果App Store上审核通过。
为了更加客观的证明谣言的不真实性,以及亲测过审的难度,Layabox秉承着向开发者负责的态度,决定将Layabox自研的两款项目,以Layabox的企业开发者帐号以及非Layabox的开发者帐号,分别提交苹果的AppStore审核,用以消除开发者的顾虑。
1
APP成功过审,谣言不攻自破
我们选择的两款用于App Store过审测试的游戏,分别是在微信小游戏中上线的《》和《》(APP改名为:跑路的少年)。
其中,《来呀涂色》使用的是Layabox企业开发者账号发布。《跑路的少年》使用的是非Layabox开发者账号发布。目前两款项目均成功通过审核,我们可以在App Store上搜索下载,如下图所示。
(点击图片可放大查看)
当然,我们在过审的过程中,也并非是一帆风顺,大家可以继续向下看。
1
收到2.1大礼包,账号被Suspended
经过了一周的打包准备,两款项目是在同一天提交审核的。
第二天,个人开发者帐号提审的《跑路的少年》就顺利通过审核(这里不得不佩服,苹果的审核效率真是高啊)。但是《来呀涂色》项目状态仍是等待审核。当时,我们团队的心情还是比较复杂的,值得高兴的是《跑路的少年》成功通过了审核,再次证明了LayaNative打包iOS-APP过审不存在技术上的问题,但同时也希望能借此机会,碰到一些开发者反馈的问题,通过我们的解决方案,将过审经验分享给开发者。
又经过了两天的等待,“如我们所愿”的收到了传说中的2.1大礼包,如下图所示,当看到罗列了一堆违反的规定,刚开始,我们也有些无从下手,因为涉及的范围太广,并不知道具体是哪条。
(点击图片可放大查看)
由于我们提审的同学对LayaNative以及《来呀涂色》项目的自信,再加上对iOS审核的经验不足和对国外文化的理解匮乏,在回复邮件的时候,语言上没有注重使用礼貌用语,直接逐条回复说明项目没有违反任何规定,请予以重新审核。
然而,第二天我们的官方账号就被Suspended(挂起),苹果审核团队开始对账号进行调查。看到了这种结果,我们有点“受宠若惊”,在通过和同行请教学习后,得知当账号被审查,如果账号没有违规操作的情况一般会在30-45天内恢复正常,而这个时候可以跟苹果审核员发邮件进行友好沟通。有经验的同行还告诉了我们一些关于iOS审核的注意事项。(在这里感谢一下请教过的三位朋友)
1
邮件沟通,帐号解锁,审核通过
在请教了有经验的同行后,我们提审的同学写了一篇英文版本的邮件与苹果审核员进行沟通,邮件的大概内容是:“首先感谢审核员对中国开发者做出的贡献,我们非常遗憾没有通过审核,我们将会严格遵守苹果审核制度,维护苹果的生态。我们的项目是使用JS编写的,但是我们把JS代码和资源都打包到了本地,我们绝不会,也无法在项目审核通过后,动态修改APP内容,还请审核员帮我们恢复账号,再次帮我们审核或者明确帮我们指出哪条违反了规定,我们将会尽快处理”。
将邮件发送到appreview@apple.com,除了发邮件的方式,我们还会在苹果后台的“联系我们”进行沟通,沟通的种类选择审核问题,网址如下:
https://developer.apple.com/contact/apple-id/
在发出邮件的第二天,我们收到了苹果非常官方的回复,邮件的核心内容就是告诉我们继续等待。
虽然苹果官方的回应是我们无需任何操作,让我们耐心等待,但是我们的提审同学还是每隔3-5天给苹果发一次邮件,进行友好的沟通,中间的目的除了证明我们没有任何违规的操作,还希望审核团队别把我们忘了。
经过了一个多月的努力,官方账号终于审查完毕,《来呀涂色》项目从2.1大礼包变成了4.3,了解苹果审核的人都知道4.3是copyleft问题,到了这个时候,我们也是稍微喜悦了一番,因为该项目我们没有涉及到任何抄袭、版权问题。于是,我们重新提交项目,并在附件中把《来呀涂色》的《软件著作权》作为附件上传。
经过两天的审核期,Layabox官方企业开发者帐号的《来呀涂色》项目,最终也成功通过iOS审核。
此次由提审至通过,历时两个月,中间受挫的过程中,我们对LayaNative以及项目全都有着足够的信心,从第一次提交ipa包到最终的审核通过,中间没有修改过任何代码。而是尽可能请教有经验的同行,尝试过审的方案,也非常庆幸的最终通过了苹果App Store审核。
1
除了上面讲述到的两款项目过审经历,我们还将曾经帮其它开发者过审的经验以及我们请教同行获得的经验,汇总到一起,与广大开发者分享,希望能帮助到大家尽快通过App Store审核。
首先我们要知道苹果最敏感的三个事项,自己做分发平台、跳出IAP使用外部链接充值、代码热更新,如果开发者的项目违反了这三个原则那基本上你的项目无法通过审核。在这里我们提倡开发者严格遵守苹果的规则,维护苹果的生态,正确使用LayaNative引擎。
具体经验如下:
1、项目的前30分钟不要有任何从网络上加载的情况,将资源打包到本地,JS代码不要有热更新行为,目前苹果审核非常快,大家还是要严格遵守苹果的规定。
2、使用美国的网络,用英文系统测试一下,IPV6的网络环境,千万别出现网络错误等情况,否则会给审核员造成不好的印象。
3、ICON图、项目描述、五图要规矩,别有敏感词语,别和其他APP相似,也别想着通过搜索关键词关联到其他APP(例如搜索其他游戏名字,搜索到你们的游戏),这些是最基本信息,苹果有扫描机制,这几块有不合格的直接PASS。
4、别有外部链接,链接到自己的官网上。
5、用户隐私协议,直接用文本方式,也别有链接,用最简单的方式。
6、隐私协议,标注公司主体,并且和AppID的公司一致。
7、APP千万别有Bug,不要用测试服、内测服等字样。
8、千万别想着有违规行为,例如热更、外部链接充值、做平台、马甲包等问题。
9、如果拿到了2.1大礼包,先要逐条确认是否真的没有违反条例,如果确认没有问题,这个时候一定要准备英文邮件回复,回复的时候要一定要礼貌谦卑,使用一些类似这样的话:“非常遗憾没有通过苹果审核,我们通过努力排查,努力配合,希望能够帮忙再次审核。”,多用一些感谢您对苹果生态做出贡献,感谢、遗憾等礼貌和谦卑用语。
即使你的项目JS代码打包到了本地,还是有可能被苹果误伤,这个时候我们要理解苹果审核机制,审核员承受的风险比较大,他们是宁可错杀一千也不肯放过一个的态度。
10、如果你的账号不小心处于调查状态,你确定没有违规行为,要不断的进行友好的沟通,一般会在一个半月左右恢复。
11、如果收到了违反4.3规定,可以将项目的软著作为附件提交。
写在最后
最后预祝所有开发者的合规项目都能顺利通过审核,LayaNative后续也会进行update,使用技术手段禁止开发者热更新JS的行为,严格遵循苹果的制度,保护合规的项目。
The End
推荐阅读:
重磅:LayaAir2.2将引擎源码全面切换至TypeScript,支持WebGL2.0,并增加大量3D实用功能
LayaAir 2.1.0 已废除Canvas API兼容,3D现有功能丰富与易用性再次加强!
LayaAir引擎放弃Canvas API,打造次世代3D引擎与云游戏引擎,提供AI赋能!
MOBA、SLG、ARPG类型3D HTML5游戏案例精品推荐