Google Play 游戏中的成就不起作用

Posted

技术标签:

【中文标题】Google Play 游戏中的成就不起作用【英文标题】:Achievements in Google Play Games is not working 【发布时间】:2016-01-14 23:32:59 【问题描述】:

我使用 libgdx(跑步游戏)在 android 上创建了一个小游戏,运行良好。

所以我决定给它添加一些成就。

我的应用程序已发布,当我转到服务和 API 时,我看到 “此应用程序使用 google play 的服务...”

所以我进入“游戏服务”菜单。我的游戏使用 API:“API Google+,Google Play 游戏服务,即 Google Play 游戏管理”。 在关联的应用程序菜单中,我已链接我的应用程序。

当我第一次打开游戏时,它要求我连接我的谷歌帐户,所以登录方法工作正常。连接后,我会看到我的个人资料图片和我的游戏等级。 但是当我想解锁成就时,什么都没有。 我不认为问题出在代码中,因为连接运行良好并且游戏没有崩溃,没有任何附加内容并且游戏继续。 也许我错过了游戏控制台上的配置,因为当我在 Google Play Games 中打开游戏时,我看到了我的游戏,但没有成就/排行榜见图片:

Achievements in dev console

No achievement in play games

为了查看同步是否正常,我修改了游戏的描述,回到玩游戏,描述被修改了。

那么,为什么我的成就不在玩游戏服务上,因此我无法解锁它们? 我真的不明白我错过了什么...... 提前感谢您的帮助。

编辑:同样在 API 资源管理器上,当我想执行一个简单的 games.achievementDefinitions.list 以获取我的应用程序中的成就列表时,我收到一个错误:

告诉我 API 未启用,但已启用!

【问题讨论】:

您添加到游戏服务中的项目是否与您在开发者控制台中启用 API 的项目相同?他们是否也有相同的凭据(clientID)?另外,请尝试启用 Google Play Android Developer API,甚至可能启用 Google Play Game Services Publishing API。当您通过游戏服务选项卡创建新项目时,默认启用这两个 API,因此它们可能是必需的。 是的,我认为是一样的:当我去游戏服务时,包名是一样的,当我在游戏服务中注册我的应用程序时,我把在我的项目中找到的 SHA1 密钥使用keytool ..“凭据(clientID)”是什么意思?我对此什么也没做:/我还看到了一些非常奇怪的东西,我的 build.gradle 中的 android studio 说我错过了 sdk Google Repository 但它已安装!见截图:imgur.com/a/fosPD 另外,当我进入我的游戏(在智能手机上)时,如果我打开我的游戏,(第二个屏幕截图)如果我点击 Play 商店,它会正确链接到我的应用程序(你可以在这里尝试是我的应用程序:play.google.com/store/apps/…) 【参考方案1】:

我终于找到了错误在哪里。 感谢这个样本:

https://github.com/playgameservices/android-basic-samples 在 BasicSamples=>TrivialQuest2 下。

当我创建 google api 客户端时,我忘记添加 Games API, 所以我刚刚添加了.addApi(Games.API).addScope(Games.SCOPE_GAMES)

现在我的游戏运行良好,我可以为玩家解锁/获得成就:D 我现在将尝试添加排行榜:)

【讨论】:

以上是关于Google Play 游戏中的成就不起作用的主要内容,如果未能解决你的问题,请参考以下文章

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

Google Play 游戏中的成就和排行榜

Google Play 游戏,未显示成就

Google Play 游戏服务成就加载

Google Play 的定位服务在“仅限设备”模式下不起作用

在 Play 商店中发布后,Google 身份验证不起作用