Google Play游戏服务中的假分数

Smo*_*tko 8 android google-play-games

一些记分牌已经收到假分数提交.这是一个例子:

前三名得分似乎是假的

同样的事情发生在我制作的游戏中.有没有办法保护自己免受虚假提交,是否有办法调节记分牌?

sag*_*gis 11

用户伪造高分的最简单(和流行?)方式是使用root访问来编辑保存的数据.

您可以采取一些简单的步骤来使其更难:

  1. 不要将分数保持在内存中或保存状态中.例如,多个/除以一个因子并加一个常数.更好的选择是实现加密的共享首选项.
  2. 在包含分数的结构(CRC32,MD5)中添加校验和.
  3. 从保存状态加载或在内存中读取/写入时,验证分数以检查没有人使用它.
  4. 使用ProGaurd来混淆代码.如果你正在赚钱,使用DexGuard会更强大,也会使软件盗版变得更加困难.

  • 它与(2)基本相同 - 验证CRC码. (2认同)

Tod*_*man 7

我推荐两种技术......

  1. 在Developer Console中为排行榜添加最大值和最小值.如果你有一个总星的排行榜,并且游戏中只有180颗星,则将180设置为最大值.这将确保骗子不会最终添加这些假看的分数.
  2. 看看players.hide()电话.这将隐藏玩家和他/她在公共排行榜上的所有分数,以便其他人无法看到它们.请注意,此REST调用未内置于移动库中; 您需要创建自己的迷你网络应用程序(或直接进行卷曲调用)才能使用此调用.

  • 这并不能完全解决问题.即使是180分也可以是骗子提交的假分数.谷歌应该以某种方式处理提交虚假的高分,例如他们处理应用程序购买,例如通过签署每个提交分数请求. (2认同)