Google Play 游戏排行榜发布分数报告成功但不更新

Posted

技术标签:

【中文标题】Google Play 游戏排行榜发布分数报告成功但不更新【英文标题】:Google Play Games Leaderboard post score reports success but doesn't update 【发布时间】:2019-04-19 05:32:42 【问题描述】:

我在 Unity 2018.2.15f1 上使用谷歌玩游戏 Unity3D api,应该注意我的谷歌玩游戏项目没有发布,但是我不想发布它,直到我在那里完成所有成就。

排行榜发帖代码为:

public void PostScore(long score)

    Social.ReportScore(score, GPGSIds.leaderboard_high_scores, (bool success) => 
    // handle success or failure

        if(success)
        
            Debug.Log("Posted Score of " + score);
        
        else
        
            Debug.Log("Failed to post score");
        
    );

并且 logcat 始终显示这会返回成功,如下所示:

11-16 02:45:05.041: I/Unity(5503): (Filename: ./Runtime/Export/Debug.bindings.h Line: 43)
11-16 02:45:05.042: I/Unity(5503): Posted Score of 19

但是,无论什么排行榜没有更新,它始终显示 8 分。我不明白为什么会出现这种情况,因为它只显示在我的设备上,即使我擦掉排行榜它仍然存在。

是排行榜尚未发布的问题吗?或者可能还有其他事情在起作用。

【问题讨论】:

【参考方案1】:

在我的情况下,当我编辑我的 GameServices 配置文件并启用“让其他人看到你的游戏活动”复选框时,问题得到了解决。

在此之前,无论我做什么,所有报告的分数都会被忽略。

【讨论】:

omg,解决了它^^我已经在问自己我做错了什么^^【参考方案2】:

问题是 GPGS 正在缓存排行榜分数并拒绝从远程副本更新它们,解决方案是修改 IPlayGamesPlatform 接口以支持传入自定义 Types.DataSource 参数。这允许选择查看缓存和联网版本或仅查看联网版本。

【讨论】:

首先,感谢您在解决问题时回答您自己的问题。总是很高兴看到这一点。其次,我怀疑这就是我在游戏中看到的。我有一种感觉,我看到的行为是一个缓存问题。你所说的几乎证实了这一点。我会尝试实施您的解决方案,希望对您有所帮助!

以上是关于Google Play 游戏排行榜发布分数报告成功但不更新的主要内容,如果未能解决你的问题,请参考以下文章

写入 Google Play 排行榜 API 回调成功返回,但未记录分数

在 Google Play 游戏中查看应用的排行榜

如何从 Google Play 游戏服务排行榜中删除被黑分数?

Unity Android 游戏可以使用 Google Play 游戏插件登录,但无法从排行榜加载分数

Google Play 反盗版 - 排行榜中的作弊分数

如何限制到最大值。在 Google Play 游戏服务排行榜 API 中提交 1x 分数?