1.什么是马甲包?
马甲包是利用App store 规则漏洞,通过技术手段,多次上架同一款产品的方法。马甲包和主产品包拥有同样的内容和功能,除了icon和应用名称不能完全一致,其他基本一致。
2.为什么做马甲包,做马甲包有什么好处?
(1)导量、刷榜、增加关键字覆盖
一个App的关键字是有限的,马甲包能增加我们的搜索关键词,增加我们的App被用户搜索和下载的几率。一个本身质量过硬的App,马甲包能够帮助我们迅速提升排名。
(2) 抵抗风险
正常情况下,任何一款产品都是要不断的更新功能。如果我们直接在主包上更新,一旦新功能不被用户接受那就损失大了,我们前期大量投资带来的用户将会流失,如果使用马甲包,则可以随意测试新功能,好的功能就在主包上迭代,不好的也无所谓,马甲包本身就是来背锅的。
3.马甲包中内容应该怎样修改才可以?
一:UI部分
(1)修改素材及UI色调等,修改logo,修改主色调;
(2)启动图;
(3)iTunes Connect后台材料如宣传图,ICON,版权人不要出现相同;
(4)项目中修改图片的hash值;
二:代码部分
(1)修改工程中文件夹名字(全部都需要修改)
(2)修改项目名字
(3)修改类名和函数名,一般都会有前缀,一键替换,然后类名的后缀一般是view/viewController/model之类的 能改就改,(此处主要防苹果机审扫描)
(4)目录结构调整
(5)添加混淆代码,把其他地方的代码 ,引入到工程里面去,用不用先不管,反正拉进去就行,(此处主要防苹果机审扫描)
(6)修改boundID
(7)可以根据之前的App做功能部分删除或者添加部分功能,不能完全使用之前的功能,一定要修改一部分,修改功能界面等,此处可改功能可做小开关;
(8)升级version,升级一个版本号提交审核;
三:其他
(1)开发者账号,两个马甲包不要关联到同一个开发者帐号的信息;比如打包时关联
(2)打包电脑,有条件的最好用不同的MAC来打包(每台MAC上最好打包马甲包不要超过5个)
(3)上传IP,上传马甲包时,IP不要跟其他马甲包的IP相同;
(4)对于代码和资源的改动,前后打ipa包之后,比对下CodeResources文件对应文件的hash是否有变化
四:在第三步里面为什么说要换一个账号呢?
(1)因为是马甲包 肯定是不合规的 随时有被干掉的危险,Apple不单单是干掉你这个app还会对这个开发者账号进行处理或者给你下架如果使用同一个账号的话 ,主App就挂了.
(2)做马甲包就是引导用户的,刷评论什么的,还是会被Apple发现的.发现以后这个账号就又废掉了(结果参见上一条)
(3)反正就是使用新的账号吧,安全!
五:不要以为打包以后就可以提交审核,在提交审核之前需要注意
(1)项目描述不能和之前的一样
(2)项目宣传也不可以一样
(3)需要测试账号的,不要提供一样的账号!
4.说完怎么上马甲以后再说下什么情况会被拒绝
(1).项目里面有支付的sdk,但是apple审核的时候没有看到项目里面有用到支付的地方,,,,,那就会直接回复说,项目里面有隐藏功能,属于欺骗,,,,或者去掉支付的sdk
(2).需要使用内购的部分,没有使用内购也会悲剧,比如发礼物.
(3).审核的时候发现了你做的隐藏功能
(4).付费陪伴,这个是什么意思呢(比如付费视频聊天,聊天发消息扣费,诸如此类的线上完成任务付费的)
(5).评级不对的
(6).宣传文本,宣传图片,app描述,里面有 诱导性语言的
若想通过审核,除遵守上面几项条款以外,在4.3问题上主要是改变二进制代码,如果是同一个包(马甲包)想要改变二进制代码而对功能又没有任何改变,可以使用几维安全提供的安全编译器,利用混淆的技术来改变二进制文件。
4.3是功能或者应用程序重复出现在App Store,跟别人已经上架的APP非常相似,以及上传马甲或者分包导致的被拒回复
元数据方面修改思路
①修改应用程序价格,打造与原产品不同的价格级别;
②修改应用程序发布地区,打造与原产品不同的售卖地区或分不同地区运营;
③修改产品分类,打造与原产品不同的产品侧重属性分类;
④回复苹果产品设计理念等,表述产品情怀,希望打造独一无二的产品,比如功能目前会跟其他类似,会有相同情况;然后提出产品内某功能加以细节性说明,比如功能在市场上其他人还没做等等;
修改后回复内容可参考如下:
(主要表述方面侧重在于用户体验,及满足不同用户细化体验等方面):
尊敬的苹果开发者审核,
您好,针对于贵方提出的4.3相关问题,我方目前已修改“地区/售价/分类”,主要目的在于针对不同的人群属性做运营方面的区分,我们希望给予用户不同的产品体验,包括应用程序内的功能侧重点,展现给用户的内容等等;希望贵方能重新审核,及时给予我方App通过审核并发布至App Store。
诚挚的问候!
附:苹果的三种审核机制!
1,预审核---
扫描api,及plist文件字符缺失等;此处分两步,第一步为上传时苹果Application Loador等应用对于适配icon等的检查,第二步为上传后苹果的功能性检查,例如配置了Push功能但有缺失或者未打开功能,则会邮件提示等等;
2,机审---
此处扫描支付SDK等,及马甲情况,机器扫描主要看代码块,可参考百度蜘蛛抓取网站模块原理;如遇部分无法过机审情况可尝试加速绕过机审(不是100%成功);
3,人工审核---
此处主要检测功能或者App体验测试,例如用测试账号登录App体验功能,或其他是否明显bug等,ipv6也在此处检测
五、总结
马甲包本身是不符合苹果的上架规范的,但是为了让更多的用户下载我们的App,提升我们App的排名,我们不得不想尽办法制作马甲包,顶风作案。开发马甲包我们主要从UI展现和代码实现尽量的把它们做的不像相同的App,但是它们的核心内容是相似的,用户流量最终流向同相同的服务器,实现导量和提升排名的功效。
我们在上架马甲包的时候还要尽量保证主App的安全,所以使用单独的账号上架马甲包,为了提高过审率,还要使用不同的电脑进行包的上传。项目描述&产品宣传等等都不能一样,就是尽量做成两个App,但是呢周期又要短。
最后,马甲包只是一个辅助,我们的App本身一定要有内容,这样才能够留住用户,否则就算用户下载了,很快也会卸载。导致“留住了用户的人,没有留住用户的心”,只留下了用户信息,不能为我们带来实质性的价值。