【问题标题】:Google Play Games Leaderboard post score reports success but doesn't updateGoogle Play 游戏排行榜发布分数报告成功但不更新
【发布时间】: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 分。我不明白为什么会出现这种情况,因为它只显示在我的设备上,即使我擦掉排行榜它仍然存在。

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

【问题讨论】:

    标签: c# unity3d google-play-services google-play-games


    【解决方案1】:

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

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

    【讨论】:

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

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

    【讨论】:

    • 首先,感谢您在解决问题时回答您自己的问题。总是很高兴看到这一点。其次,我怀疑这就是我在游戏中看到的。我有一种感觉,我看到的行为是一个缓存问题。你所说的几乎证实了这一点。我会尝试实施您的解决方案,希望对您有所帮助!
    猜你喜欢
    • 2020-11-10
    • 1970-01-01
    • 2013-05-12
    • 2017-01-30
    • 2017-09-12
    • 1970-01-01
    • 2017-09-22
    • 1970-01-01
    • 2016-08-29
    相关资源
    最近更新 更多