如何访问 Google Play 游戏玩家 ID

Posted

技术标签:

【中文标题】如何访问 Google Play 游戏玩家 ID【英文标题】:How to access Google Play Games Gamer ID 【发布时间】:2016-07-10 17:06:17 【问题描述】:

最近,谷歌在 Google Play 游戏服务中添加了玩家 ID 的概念,允许玩家设置不同于其 google+ 身份的游戏身份。 http://officialandroid.blogspot.co.uk/2016/02/embrace-your-inner-gaming-hero-with.html

我的用例是我有一个使用我自己的配对服务器的在线多人游戏。我不使用 Google Play 游戏的匹配,因为我需要基于技能的匹配功能,而目前使用 GPGS 不可用。

如果玩家碰巧登录,我希望能够显示玩家的 Google Play 游戏身份(只是名称)。但是,我之前出于隐私原因选择不这样做,因为我知道在快速匹配中GPGS,谷歌选择隐瞒你对手的身份,我觉得我应该效仿他们。

现在,我认为添加玩家 ID 的部分原因是为了避免需要对隐私进行此类谨慎。所以我有以下问题:

    有没有办法以编程方式获取本地玩家的 Google Play 游戏玩家 ID? 有没有办法确保我得到的是玩家 ID,而不是带有额外隐私问题的旧式 google+ 身份? 我是否正确地假设新玩家 ID 的隐私更加宽松,Google 和我的用户在与互联网上的随机对手比赛时不会担心玩家 ID 被共享?

【问题讨论】:

您是否成功通过玩家 ID 邀请玩家?那请指导我。因为我需要制作一个朋友列表之类的东西,玩家可以直接从中邀请其他人。 【参考方案1】:

您可以从http://android-developers.blogspot.com/2016/01/play-games-permissions-are-changing-in.html获得更多信息

快速回答您的问题:

    您可以通过编程方式获取本地玩家的 ID、名称和头像 像往常一样使用Games.getCurrentPlayerId() 或 Games.getCurrentPlayer() 然后使用Player.getDisplayName()。

    您可以在服务器端使用www.googleapis.com/games/v1/applications/<app_id>/verify/ 验证玩家的身份 如博客文章中所述获得的令牌。更新的 权限现在正在推出,所以我希望它无处不在 很快。

    是的,正是由于这个原因,新的玩家身份独立于 Google+。因此,您可以安全地使用玩家身份,而不会危及玩家的隐私。

【讨论】:

谢谢!对于问题 2,有没有一种方法可以在客户端上检查通过 Internet 与陌生人共享本地 Player.getDisplayName 是否安全?例如也许有一个 google play 游戏服务的版本号,我可以检查 getDisplayName 从隐私敏感数据到安全共享的位置。 感谢克莱顿威尔金森。是否可以向特定玩家 ID 发送邀请? 嗨克莱顿。只是有一个快速的问题。 Google Play 游戏服务 (GPGS) ID 和玩家 ID 是否相同?还是它们是不同的 ID,每个用于不同的目的? 如果我正确理解了您的问题,是的,这两个名称具有相同的值;将使用 Games.getCurrentPlayerId() 检索。

以上是关于如何访问 Google Play 游戏玩家 ID的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 Google Play 游戏服务的实时多人游戏中使用机器人玩家?

Google Play 游戏服务退出回调

Google Play 游戏:向其他玩家发送消息

Google Play 多人游戏:与其他玩家没有连接

登录 Google Play 游戏服务后获取玩家 ID

如何将 Firebase 帐户关联到 Google Play 游戏帐户