8

解决了

我有一个快速的问题,我找不到具体的解决方案。问题是我有一个使用 GooglePlay API 的排行榜。我想要做的实际上是获得个人和特定玩家的玩家得分。

例如,我想在我的活动(不是 LeaderboardActivity)的字符串上显示他在排行榜中的分数,或者将它放在我游戏的左上角。

我怎样才能做到这一点?

谢谢!

4

1 回答 1

8

不知道为什么不赞成投票。无论如何,这是我找到解决此问题的方法:

关于你的活动:

if (isSignedIn()) {
    getGamesClient().loadPlayerCenteredScores(
        this,
        getResources().getString(R.string.leaderboard_id),
        LeaderboardVariant.TIME_SPAN_ALL_TIME,
        LeaderboardVariant.COLLECTION_SOCIAL,
        25,
        true
    );
}

然后在听众上:

@Override
public void onLeaderboardScoresLoaded(int arg0, LeaderboardBuffer arg1, LeaderboardScoreBuffer arg2) {
    Iterator<LeaderboardScore> it = arg2.iterator();
    while(it.hasNext()) {
         LeaderboardScore temp = it.next();
         Log.d("debug", "player:" + temp.getScoreHolderDisplayName() + " id:" + temp.getScoreHolder().getPlayerId());
    }
}

玩家是中心分数,所以如果你带来平均结果,玩家应该在中间。您可以迭代并检查玩家 ID 是否匹配。

干杯。

于 2013-08-08T00:52:45.333 回答