从Google Play游戏服务Android获取朋友的信息

时间:2015-08-18 09:00:39

标签: android unity3d google-plus google-play-services google-play-games

我在Android上有一个游戏,其中GPGS (Google Play Games Services)已整合,我将highScores提交给排行榜。

如果我得到更好的分数,我想要做的就是让朋友的高分数和个人资料图片在游戏场景中展示。

我搜索了很多,但无法找到任何解决方案。

有可能做这样的事吗?我如何获得朋友信息?

先谢谢。

2 个答案:

答案 0 :(得分:1)

你必须至少打2个电话。第一个是对[loadConnectedPlayers](https://developers.google.com/android/reference/com/google/android/gms/games/Players.html#loadConnectedPlayers(com.google.android.gms.common.api.GoogleApiClient,boolean)的调用。这将返回玩家圈子中的玩家列表并且之前玩过游戏。第二个是调用是获取排行榜数据。由于(希望)有1000个分数,你应该调用[loadPlayerCenteredScores](https://developers.google.com/android/reference/com/google/android/gms/games/leaderboard/Leaderboards.html#loadPlayerCenteredScores(com.google.android.gms.common.api.GoogleApiClient,java.lang.String,int,int,int)来获得当前玩家的分数。您可以使用[loadMoreScores](https://developers.google.com/android/reference/com/google/android/gms/games/leaderboard/Leaderboards.html#loadMoreScores(com.google.android.gms.common.api.GoogleApiClient,com.google.android.gms.games.leaderboard.LeaderboardScoreBuffer,int,int))在页面排行榜数据中向上或向下翻页。

一旦你拥有了这两组数据,就可以通过调用getScoreHolder将所连接的玩家与排行榜中的玩家进行比较,并比较玩家ID。

答案 1 :(得分:0)

不,没有直接API可以做到这一点。

Android API有一个方法loadPlayerCenteredScores,允许您在排行榜中加载类似的玩家分数,但这并不是您想要的100%。在Unity wrapper中似乎没有该方法的实现。

我建议你回到standard leaderboard UI,默认显示玩家在Google+朋友中的排名。

相关问题