我们公司是卖产品和服务的,就是有我们自己的一套系统然后给客户定制。这就有一个问题了,就是产品的相似度太大。在本公司的同一个开发者账号下创建了多个类似应用(换壳应用),遭到苹果警告。
【一】邮件大致内容
You will experience a delayed review process if you deliberately disregard the App Store Review Guidelines, ignore previous rejection feedback in future app submissions, or use your app to mislead or deceive users.
Important Information
As a result of violating this guideline, your app’s review has been delayed. Future submissions of this app, and other apps associated with your Apple Developer account, will also experience a delayed review. Deliberate disregard of the App Store Review Guidelines and attempts to deceive users or undermine the review process are unacceptable and is a direct violation Section 3.2(f) of the Apple Developer Program License Agreement. Continuing to violate the Terms & Conditions of the Apple Developer Program will result in the termination of your account, as well as any related or linked accounts, and the removal of all your associated apps from the App Store.
We want to provide a safe experience for users to get apps and a fair environment for for all developers to be successful. If you believe we have misunderstood or misinterpreted the intent of your app, you may submit an appeal for consideration or provide additional clarification by responding directly to this message in Resolution Center in iTunes Connect.
For app design information, check out the following videos: "Best Practices for Great iOS UI Design" and "Designing Intuitive User Experiences," available on the Apple Developer website.
You may also want to review the iOS Human Interface Guidelines for more information on how to create a great user experience in your app.
邮件如下:意思是说违反公平竞争规则,会导致审核期延长,继续违反的话账号会被封号。所以,同一个开发者账号下,类似应用过多的要注意了。群里有的同学们公司的开发者账号被封过的。
【二】4.3也分两种:一种是机器4.3,一种是人工审核被拒4.3。
主要原理是对App扫描。App扫描分为两部分,
一部分是对代码进行扫描, 一部分是对资源文件进行扫描。代码扫描部分主要是对编译器会对每个函数生成编译器内部才识别的函数名, 所以这里就需要针对不同的语言进行不同的修改,而且修改的量也需要比较大,才能绕过苹果的识别库。 对代码进行修改可以人工进行修改, 比如函数增加一些默认参数啊,修改类名和函数名, 也是可以应对和解决的,只是比较费时费力。 如果想省时省力,最好是写代码进行批量修改或生成。
针对资源文件的识别, 主要是针对各个文件扫描出来的MD5进行比对,如果文件和苹果识别库里的App相似达到一定程度,就会触发4.3, 这时候我们可以人工增加大量小文件进行混淆, 当前技术实力强一点, 也可以通过代码进行生成。
【A】机器被拒4.3
Guideline 4.3 - Design - SpamYour app duplicates the content and functionality of apps submitted to the App Store, which is considered a form of spam.Apps that simply duplicate content or functionality create clutter, diminish the overall experience for the end user, and reduce the ability of developers to market their apps.You will experience a delayed review process if you deliberately disregard the App Store Review Guidelines, ignore previous rejection feedback in future app submissions, or use your app to mislead or deceive users.
如果你收到的被拒信息是这样的, 主要是看第一句话:Your app duplicates the content and functionality of apps submitted to the App Store, 这种情况下基本是没过机器审核。这种情况是直接代码审核都没过,还没到开发人员的手里。
解决方案, 需要对源码进行改动, 以下举例说明:
1 所以这个时候我们必须对代码进行删减,注意UI界面类似还可以,这个是无法通过代码扫描过滤的到的。必须对代码进行删减,我们是通过后台写一个接口,如果我们的模块是 A B C D E 客户想要的仅仅是A ,那我们就按照 A+B 去提交审核,审核时候展示B模块,上架成功切换A模块。
2 其次是添加大量注释代码和垃圾代码。
3 更换开发者账号来避免扫描。
4.每一个工程都有一个类前缀, 我们需要取一个长一点的类前缀, 并且这个类前缀在你的整个工程一定是一个唯一的字符串, 我们假设这个类前缀是PayDayLoan, 现在我们需要生成一个控制器, 控制器的结尾Controller也需要用一个特定的字符去代替, 比如:Director,剩下的View以及object做法类似, 就不一一介绍了,做马甲的时候就是把这些名字用另一个唯一的字符去代替, 尽量长一点
【B】机器被拒4.3
Guideline 4.3 - Design - SpamWe found that your app provides the same feature set as other apps submitted to the App Store, which is not appropriate to the App Store.
这句话是用来判断人工审核4.3, 主要的意思就是说你app的功能跟其他app相似, 如果跟你说了这种情况一般是人工审核4.3。
解决方案, 需要对源码进行改动, 以下举例说明:
对界面做一些简单处理即可, 以下举例说明:多加一些其他功能, 让苹果知道该只是其中一个功能, 只要能体验出这个app跟其他app很不一样。
【三】补充
因为现在国内马甲包泛滥了,所以一般你的审核如果inreview了很久,并且发现后台有美国ip地址登录过,最后被拒了。那妞就是在人工审核环节被拒了。
人工审核4.3被拒的账号后面再次提交的时候,账号上有4.3的记录, 苹果审核人员这时候就会高度怀疑了, 这种情况被人工4.3的概率就要大很多了。基本上审核周期是七天或者更久。
一个账号下面最好不要上太多同款的App、