我工作的一个多级的Android游戏,我想登录后拉高分 我这样做:如何从Android的Google Play游戏API中拉出多个排行榜?
Games.Leaderboards.loadCurrentPlayerLeaderboardScore(getApiClient(), getString(LEADER_BOARDS[i]),
LeaderboardVariant.TIME_SPAN_ALL_TIME, LeaderboardVariant.COLLECTION_PUBLIC)
.setResultCallback(this);
但回调不给我的排行榜ID:
@Override
public void onResult(LoadPlayerScoreResult res) {
}
我只拿到分数(res.getScore()
)。 那么,我必须为我的25个关卡创建回调,还是有更好的解决方案?
这并不工作,以及:
for (int i = 0; i < 25; i++)
Games.Leaderboards.loadCurrentPlayerLeaderboardScore(getApiClient(), getString(LEADER_BOARDS[i]),
LeaderboardVariant.TIME_SPAN_ALL_TIME, LeaderboardVariant.COLLECTION_PUBLIC)
.setResultCallback(new ResultCallback<LoadPlayerScoreResult>() {
@Override
public void onResult(LoadPlayerScoreResult res) {
// can't use variable i here
}
});
我认为你的方法是关闭的。为什么你需要排行榜ID,如果你已经拥有它。你正在将它输入到方法中,你为什么需要它。 – Ogen
因为我必须知道返回哪个结果(对于具有一个onResult侦听器的第一种方法)。当然,如果我复制它25次,我知道排行榜ID,但应该有一个比这更好的解决方案。 – lukas1994
那么你的目标究竟是什么?你想以最有效的方式从25个不同的排行榜获得一个玩家的分数? – Ogen