近期有款产品遭遇了苹果审核的 4.1 被拒。具体拒绝文案如下:
Guideline 4.1 - Design - Copycats
Your metadata appears to contain third party content. Specifically, your app resembles xxx game and its console.
The next submission of this app may require a longer review time, and this app will not be eligible for an expedited review until this issue is resolved.
Next Steps
文案已经写的很清晰了,就是说你的产品和某款知名游戏太像了,你这是侵权的,后面审核时间会拉长(简单的说你的提交会被扔到延后的等待队列中,说明优先权被降了)。
最后还是苹果的老传统,类似警告的文案:
Submitting apps designed to mislead or harm customers or evade the review process may result in the termination of your Apple Developer Program account.
提交旨在误导或伤害客户或逃避审核流程的应用程序可能会导致您的 Apple Developer Program 帐户被终止。
苹果传统威胁:话风很锐利,后果很严重。
坦白说,在这之前我是没料到会中 4.1 的,因为产品之间的功能难免雷同,而在开发过程中我也并未刻意的要模仿某些游戏(没错,简单的说我认为我是无辜的)。
所以我的个人猜测,苹果审核应该是人工瞄了一眼,“感觉上”有点像,就跟着感觉走直接驳回。
没办法,我也采用了遭遇苹果拒绝后的传统回应套路:先回复面板沟通。
我在回复面板里大致是这么回应的(中文):
关于这个游戏的“copycat”问题,我有不同的看法。首先,根据 xxx 这个游戏的特点,可以总结如下:(以下省略若干字)。而本游戏并没有使用 xxx 这样的玩法组合,故并未构成侵权。
在开发这个软件时我已经充分考虑到这个问题,所以充分的尊重了 xxx 作为知名游戏的独有玩法,所以开发的是游戏玩法虽然有致敬,但是没有抄袭的做法。
希望审核人员明察。
隔了三天,苹果审核回复了我,大体的意思是:感谢你的回复,但是我们坚持认为……
那还有什么说的,预料之中,改。
于是我开始分析怎么规避这一次 copycat,事实上玩法上我是真的差异化了(当然核心肯定不会大变的,不然大家游戏都不用做了)。重点在于视觉,于是我赶紧找人帮我重新调了下游戏配色,以及部分图案的重换,再次提交。
怀着略显忐忑的心情等待,结果等了几天进入审核,居然秒过了!
经验总结:4.1 的 copycat 不可怕,比起判定你是马甲的 4.3 来,要好受的多。首先 4.1 基本是人审,人审就比较好讲道理,而机审就很难,因为现在苹果审核就是机器的小弟,全听机器的;其次首先自己腰板要直,只要充分考虑过侵权这个问题,并做过相应处理,底气就更足,也比较好和审核叫板;第三点,不要急于修改,先理论,提出自己多观点,要学会平视审核,不要学很多网友搞的自己苦兮兮的,说了一堆卖可怜的话,论据没有重点。最后一点,要认命,如果真的苹果审核死咬不放,那就不要纠结了,趁早放弃保号稳妥。
关于不要和苹果卖惨这点,可以详见这篇:苹果审核的沟通与申诉的一些见解 的 “卖惨”的作用趋向于负 一节。
原帖:http://blog.csdn.net/fullsail/article/details/2915685
1. 获取处理器ID、类型及内存大小import wmiw=wmi.WMI()for processor in w.Win32_Processor(): print "Processor ID: %s" % processor.DeviceID print "Process Name: %s" % processor.Name.strip()totalMemSize=0fo
使用TensorFlow构建一个神经网络来实现二分类,主要包括输入数据格式、隐藏层数的定义、损失函数的选择、优化函数的选择、输出层。下面通过numpy来随机生成一组数据,通过定义一种正负样本的区别,通过TensorFlow来构造一个神经网络来实现二分类。一、神经网络结构输入数据:定义输入一个二维数组(x1,x2),数据通过numpy来随机产生,将输出定义为0或1,如果x1+x2<1,...
一、查询1、用?的形式获取参数示例:@Query("select u from User u where emailAddress = ?1 and name = ?2")User findByEmailAndName(String emailAddress, String name);在这里?+数字代表占位符,比较特殊的是数字从1开始,而非从0开始。?1代表顺序中的第一个参数。2、...
JPEG图片解码的思路:1、将JPEG并行解码的算法在两种并行结构上实现:GPU - 多核系统,SESC - SMP系统. JPEG on CUDA and SESC. fused multiply-addRGB转化为YUV的一种优化方法:
目录一、客户端实现二、单进程服务器2.1 单进程实现2.2 单进程非阻塞实现2.3 TCP服务器(select版)2.4 epoll版服务器实现三、多进程服务器和多线程服务器四、协程4.1 协程的生成器实现4.2 协程的greenlet实现4.3 协程的gevent实现4.3.1 gevent的使用4.3.2 gevent的切换执行4.3.3 gevent的服务器实现一、客户端实现客户端比较简单,并且适用于与不同服务器通信,代码如下:#c
今天在学习贝塞尔曲线看到需要结合三角函数 以及两个不认识的Api :API Math.atan() 和Math.atan2() 先看下三角函数 正切函数图:(180为一个周期 即45=45+180) 正弦 正余弦函数方程为: y = Asin(wx+b)+h ,这个公式里:w影响周期,A影响振幅,h影响y位置,b为初相;w:周期就是一个完整正弦曲线图此数值越大sin的周期越小 (cos越
原文地址: http://ihoge.cn/2018/PCA+SVM人脸识别.html加载数据这里使用的测试数据共包含40位人员照片,每个人10张照片。也可登陆http://www.cl.cam.ac.uk/research/dtg/attarchive/facesataglance.html 查看400张照片的缩略图。import time import loggingfr...
起因在今天的项目中需要将一个分支版本的代码同步到主干版本上,由于分支版本是定制化需求,同步到主干时需要进行在已有基础上封装,在传递函数的过程中出现了这个问题。这个问题的首先是要将一个前端的md5校验嵌入一个封装好的文件上传指令中。为了不影响已经封装好的指令,于是在指令中新增加一个before-fn来执行这些操作解决<div before-fn="mainCtrl.getMd5(fil...
什么是Netty如果在网络上搜索它,你可以在官网上看到如下内容:Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.简单说,Netty...
STM32F429IGT6 自带了 256K 字节的 SRAM,对一般应用来说,已经足够了,不过在一些对内存要求高的场合, STM32F429 自带的这些内存就不够用了。比如使用 LTDC 驱动 RGB 屏、跑算法或者跑 GUI 等,就可能不太够用,STM32F429 开发板板载了一颗 32M 字节容量的 SDRAM 芯片: W9825G6KH,满足大内存使用的需求。...