Google Play服务排行榜-仅在打开排行榜时发布分数

时间:2018-09-07 06:23:38

标签: android google-play-services leaderboard

我有一个使用排行榜实现的Android游戏。我的问题是,用户看起来一切都很好,并且他的分数仅在他打开排行榜时才会显示。 在活动中,我将其称为onCreate:

if (!isSignedIn()) {
        beginUserInitiatedSignIn();
    }
    if (getApiClient().isConnected()) {
        Games.Leaderboards.submitScore(getApiClient(), getString(R.string.leaderboard), totalScoreLong);
    }

打开排行榜时:

if (!isSignedIn()) {
                beginUserInitiatedSignIn();
            } else {
                startActivityForResult(Games.Leaderboards.getLeaderboardIntent(getApiClient(), getString(R.string.leaderboard)), 2);
            }

此外,当用户在游戏中完成回合时,我尝试发送更新的得分:

if (getApiClient().isConnected()) {
            Games.Leaderboards.submitScore(getApiClient(), getString(R.string.leaderboard), totalLong);
        }

我在做什么错?在打开排行榜之前,我无法看到用户。...猜猜它不应该以这种方式工作,因为我看到过其他具有数千名用户的应用程序,而且我认为所有人都不会看到排行榜。我的应用程序上有很多用户,所以这应该不是问题,我也用2种设备进行了测试,但该用户不可见。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用GoogleApi代替GoogleApiClient这样做吗?这样,您就可以摆脱可能存在一些问题的连接状态。

您还可以使用red方法,该方法将尝试异步加载得分并返回结果数据。

示例:

submitScoreImmediate