【2018年06月30日整理】马甲包最新过审技巧

最近苹果审核组委会开始了针对App Store应用商店上的CP,传奇,菠菜,棋牌等类型马甲包重复应用的严厉打击并下架一批应用,所谓重复应用,俗称“马甲包”早期也叫套壳,意思是相同的游戏产品,通过使用不同的开发者账户,更换游戏名字、icon以及美术宣传图等方式,让多个包同时在商店中上架,以便能获取更多的新增用户。

从去年12月开始,苹果突然加大了马甲包的打击力度,审核突然严格起来。很多产品即使发布在不同的国家或地区,都有可能被判断为重复应用而被打回。最近恰好自己负责的产品也即将面临这种问题,所以结合一些行业和过往经验,整理了一些针对性的技巧。

首先,先科普下目前苹果的审核机制。

目前苹果审核分为3个阶段:

1、预审核:

主要是机器扫描App的api、plist文件字符缺失情况,第一步是上传时对于应用的适配icon等的检查,第二步是上传后苹果的功能性检查,简单的理解,就是对应用相关信息匹配的检查;

2、机器审核:

这里就开始了针对马甲包的检查,包括扫描SDK,检查代码,以及登录游戏,抓取登录界面、loading图、游戏主界面UI等,然后和已有游戏进行对比,从而判断是否为马甲包;

(开发者一般都叫扫包,所以现在有q ⒉二.O⒌⒊⒌⒎O.0.7提供扫包或提供资质账号上架服务)审核周期长一直卡审,未隐藏但是还是被拒了,浪费不少时间成本还是未能解决3.1.1或2.1大礼包,未隐藏但是还是被拒了。一直尝试隐藏但是过了几个月还是没能通过,后来去除了还是被干了!!

3、人工审核:

当机审通过后,苹果会安排人工进行一些基础功能或体验测试,是否有明显的bug等,基本上到了这一步,说明重复应用的检查已经通过;

了解苹果的审核机制后,下面说下提升马甲包通过几率的一些技巧。

出包层面:

1、建议每次出新包,更换不同的打包Mac设备;

2、每次打包时,使用VPN,更换打包的网络地址,以上信息苹果每次都会记录,这些也是判断是否重复应用的依据;

3、做代码混淆、加密:

  • 每个包打一些混淆(垃圾)代码进去,如boost,每个包都不同,让bin至少增加5M;
  • 每个包资源全部换秘钥重新加密;
  • 每个包建议开新的Xcode工程来做,不要使用老工程;

4、测试设备的添加,每个iOS包分配1-2台设备,尽量不重复添加;

棋牌游戏层面:

1、每个新包,更换游戏名字、icon、logo以及登录界面图、游戏主界面UI、场景图等,只追求和之前包的差异化,不用在意美术质量和整体美观程度。因为这些都是临时性质的,等审核通过后 在 切换为正式版本;

2、对以上美术资源的使用进行详细记录,不可重复使用;

3、使用不同的开发者账号进行提审,对应更换新的提审资料,例如游戏icon、商店图等等;

ipa包的检查

主要是确保ipa中info.plist、包/文件大小、icon规格、私有API、第三方SDK、64位等内容符合苹果要求;

提审资源的检查

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

应用内容和功能的检查

确保应用的内容满足苹果审核审核指南中安全、性能、设计、法律等章节的条款,通常需要覆盖安装、登录、IAP支付、公告、活动、邮件、icloud文件存储、美国VPN网络连通性、IPv6网络连通性等应用场景内容和功能,此部分的验收,全需要人工来审查;

我们需要考虑马甲包在上述审核过程中,如何绕过自动审核和人工审核:

马甲包中的info.plist要尽量避免与主包中的plist文件重复;

资源文件包括icon、包内资源、视频/截图、文案必须有比较明显的变化以应对人工检查;

二进制文件和脚本也需要有差异,可以考虑删除部分功能的方式,如果觉得工作量大,可以考虑使用代码混淆方案,测试了几种混淆方案,过审率不高,后来找到了几维安全的在线静态库加密,顺利过审,目前还没有失败的情况,免费,缺陷不能支持脚本加密。如果是游戏类的马甲包,多半得买他们的编译器产品。

免费版在线静态加密工具​
交流群内有付费版本的下载

根据加我需要解决问题的用户大多数都是App中了以下问题。所以大家只要注意这几点问题

1.1.6 – 含有提供虚假信息的功能(比如:虚拟定位工具、匿名短信工具等)

2.3.0 – 含有不经审核也可更改 App 功能的热更功能

2.3.1 – 含有隐藏功能,包括定向到赌博或彩票网站的开关

3.1.1 – 含有第三方支付以绕开 App 内购

4.3.0 – 重复 App 或马甲包

5.2.1 – 未提供 App 上架所需的行业资质(比如:金融营业许可证、游戏版号等)

5.3.4 – 含有货币游戏(如:体育下注、赌场游戏等),但未提供相关许可资质

以上就是目前整理的一些过审技巧,希望能够给需要的同学们带来帮助。

以上就是目前整理的一些过审技巧,希望能够给需要的同学们带来帮助。转载请注明作者名称及来源地址

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏闻道于事

商城项目整理(三)JDBC增删改查

商品表的增加,修改,删除,订单表的增加,确认,用户表的查看,日志表的增加,查看 商品表建表语句: 1 create table TEST.GOODS_TABL...

5435
来自专栏Pulsar-V

C#下各种获取时间的姿势

直接贴代码吧 DateTime dt = DateTime.Now; Label1.Text = dt.ToString();//2005-11-5 13:21...

3206
来自专栏跟着阿笨一起玩NET

C# Stream 和 byte[] 之间的转换

601
来自专栏张善友的专栏

Using sqlite with .NET

The other day I found that there is a .NET wrapper for sqlite. sqlite is a very ...

2278
来自专栏跟着阿笨一起玩NET

GB2312转换成UTF-8与utf_8转换成GB2312

1831
来自专栏xingoo, 一个梦想做发明家的程序员

windows程序设计-第四章 system1.c

/*---------------------------------------------------- SYSMETS1.C -- System M...

23510
来自专栏码匠的流水账

聊聊spring cloud的AbstractLoadBalancingClient

本文主要研究一下spring cloud的AbstractLoadBalancingClient

832
来自专栏互联网开发者交流社区

WinForm之窗体应用程序

1843
来自专栏积累沉淀

Hive2.0.0操作HBase 1.2.1报错解决

首先看错  org.apache.hive.service.cli.HiveSQLException: Failed to open new session: ...

2329
来自专栏海说

Java应用中常见的JDBC连接字符串(SQLite、MySQL、Oracle、Sybase、SQLServer、DB2)

Java应用中常见的JDBC连接字符串 Java应用中连接数据库是不可或缺的,于是便整理一些可能用到的JDBC的jar包及其相匹配的URL,以备日后查阅。 1)...

2720

扫码关注云+社区