如何从 Google Play 游戏服务排行榜中获得排名?
How to get rank from Google Play game service's leaderboard?
我正在开发一个大型应用程序,我必须从 Google Play 服务的排行榜中获取玩家的排名。排行榜运作良好。我已经找到了正确的方法,但我不知道应该如何使用它:
private void loadRankOfLeaderBoard() {
Games.Leaderboards.loadCurrentPlayerLeaderboardScore(mGoogleApiClient, getResources().getString(R.string.leaderboard_leaderboard), LeaderboardVariant.TIME_SPAN_ALL_TIME, LeaderboardVariant.COLLECTION_PUBLIC).setResultCallback(new ResultCallback<Leaderboards.LoadPlayerScoreResult>() {
@Override
public void onResult(final Leaderboards.LoadPlayerScoreResult scoreResult) {
if (isScoreResultValid(scoreResult)) {
rank = (int)scoreResult.getScore().getRank();
}
}
});
}
但从未调用 onResult
回调。我应该在哪里调用函数 loadRankOfLeaderBoard?我试着把它放在 onCreate
和 onActivityResult
...
感谢您的帮助!
好的,我终于找到了解决方案... here for curious
因此,如果您遇到同样的问题,则必须将函数 loadRankOfLeaderBoard 放在函数 "onConnected" 上,当您在 google 播放服务连接设备时将调用该函数。
我正在开发一个大型应用程序,我必须从 Google Play 服务的排行榜中获取玩家的排名。排行榜运作良好。我已经找到了正确的方法,但我不知道应该如何使用它:
private void loadRankOfLeaderBoard() {
Games.Leaderboards.loadCurrentPlayerLeaderboardScore(mGoogleApiClient, getResources().getString(R.string.leaderboard_leaderboard), LeaderboardVariant.TIME_SPAN_ALL_TIME, LeaderboardVariant.COLLECTION_PUBLIC).setResultCallback(new ResultCallback<Leaderboards.LoadPlayerScoreResult>() {
@Override
public void onResult(final Leaderboards.LoadPlayerScoreResult scoreResult) {
if (isScoreResultValid(scoreResult)) {
rank = (int)scoreResult.getScore().getRank();
}
}
});
}
但从未调用 onResult
回调。我应该在哪里调用函数 loadRankOfLeaderBoard?我试着把它放在 onCreate
和 onActivityResult
...
感谢您的帮助!
好的,我终于找到了解决方案... here for curious
因此,如果您遇到同样的问题,则必须将函数 loadRankOfLeaderBoard 放在函数 "onConnected" 上,当您在 google 播放服务连接设备时将调用该函数。