之前受邀在cocos商城上架一些业余自研的个人独立开发游戏的源码,折腾上架了三份源码(这里就不做广告不一一介绍了,链接都在这里:链接1 链接2 链接3)
在此过程中,认识了一些开发者和网友,他们在公开源码或购买源码上架微信小游戏时,大多都会谈论到两个问题:
- 微信小游戏平台的代码侵权问题
- 恶意注册问题
做了下调研和尝试,今天就这两个问题说说我的看法。
首先针对第一个问题
先说说背景:
如果有不怀好意之人反编译或通过一些不好的手段获取到开发者的源码,这时候去上架微信小游戏,那么对开发者来说是有害的,那么就需要一个机制来确保开发者在微信小游戏平台内对特定代码有所属权。但这样也会误杀部分合理述求,比如cocos商城公开的代码又或者同一个个人或公司要复用的代码。
微信小游戏的代码授权功能就是为了解决这些衍生问题的。
在注册完微信小游戏号后,mp后台的‘设置’-‘游戏设置’最底部会有一个关于代码授权的功能模块
这个的使用很简单,就是添加要授权的游戏的appid即可,那么授权游戏在提审时,就会认为得到了最原始游戏的代码授权,他就能进行源码修改和游戏上架。
但这里落下了一个疑问。
微信平台是怎么判断一份代码的所属权就是属于当前游戏的呢?
据我了解,目前的逻辑是:谁先提审,谁拥有代码的所属权。
具体就是在mp中,审核版本出现的时间如果是全网最早的,那么就拥有代码所属权。
这很好理解,但实际操作下来非常奇葩,请看以下情况:
我先提审,然后A同学在得到我授权后也提审了,然后因为非代码侵权原因,我的被驳回了,于是我优化代码后继续提审(此刻A同学的提审还没结果),结果没多久我这边的审核结果出来提示我侵权A游戏的代码;然后,我让A同学给我授权,授权后我继续提审;过了没多久,A同学的审核结果出来了,结果却发现是侵权了B游戏…接着,循环上述逻辑,我和AB互相授权,以为这次肯定没问题,结果后面提审的驳回结果是侵权了C游戏…无限套娃了…
确实比我提审早的人比我更加拥有代码所属权,但实际情况是这归属可能会随着他被驳回而收回。
最终能确认一件事,代码所属权是落在C游戏上了,因为他成功上线了(因为能上线,证明没有侵权问题)
所以我们不管谁先提审,只要确定谁先上线谁才有代码归属权。
那么对于我们在商城公开源码的开发者来说,如果你还是想把微信小游戏侧的代码全把握在自己手里,那么一定一定一定要先上架到微信小游戏平台(只提审都不行)
有同学可能会问,那如果实在是被人先入为主了,怎么办?这时候可能会有两种解决方式:
- 审核驳回结果中进行申诉反馈
- 进行代码混淆重新提审
两种方式成功的几率一般,我试过第一种成功的,给大家分享下经验:
描述清楚,然后把商城相关的操作截图,邮件审核记录附上,能解除惩罚(毕竟咱们说的是实情),但不一定能重新获得代码所属权。
当然mp平台底部还有个代码侵权的投诉入口,我尝试过两次都失败了。
对于代码混淆,我也试过,失败了,即使换了混淆方式都不行,这我的感受是,因为代码混淆没有解决本质的授权问题,做对抗意义不大,也不是正道。
所以再次提醒大家一句:要在商城公开代码,你在乎微信平台的授权的话,一定一定一定要先上架到微信小游戏平台(只提审都不行)
然后说说第二个“恶意注册”的问题
这个问题,说实话,个人觉得无解。因为相对代码侵权问题,这个的问题审核逻辑是一个主观判断的过程(代码侵权是机器判断),有人工参与,那么就是平台规则的事情。
我理解平台为了防止同质化严重,会给同类相似度高的提审版本定义为恶意注册。
这本身是合理的,合理的话就没法解决了,我们只能解决不合理的问题。
大伙在学习和研究代码同时,如果还想着用以上架,那就要观察下平台内此类游戏是否已经泛滥了。
当然了,cocos商城内很多源码其实卖得非常便宜,相信单纯学习和研究都值回票价了。
好了,mark一下,完毕