Tot*_*oro 0 android achievements google-play-games
我们根据官方谷歌开发文档为我们的 Android 游戏实现了 Google Play 成就,但似乎有些不对劲,因为我们注意到 Google Play 游戏应用程序中存在以下奇怪的行为:


当通过游戏互动获得成就时,成就会像预期一样在游戏中显示为解锁的弹出窗口,但它们仍然不会显示在 Google Play 游戏应用中。
我们了解到,它的出现可能需要一定的玩家门槛,但另一方面,我们看到下载量只有 100 次的游戏已经在 Google Play 游戏应用中拥有成就计数器和徽章。我们这边是否需要任何额外的配置或操作才能显示它?
我们自己找到了答案。Google Play Developer console我们搞乱了和 中的配置Google API console。
我们注意到我们的应用程序有不同的 OAuth2 客户端 ID,例如:
Google Play 开发者控制台,链接应用程序详细信息视图
121212121212-4k97si3bnwertwertwet78oj571nl81ce3.apps.googleusercontent.com
Google API 控制台、凭据、OAuth 2.0 客户端 ID
121212121212-h25jh8qrps8awertwetertweagp3n3t.apps.googleusercontent.com
Google Play Games Services当我们查看 的仪表板时,我们还发现有很多错误Google API console。

仔细一看,我们发现几乎所有错误都是客户端错误(4xx),但我们无法找出原因。
我认为在开发过程中的某个时刻,我们的签名证书的 SHA1 出现了问题,我们想,我们可以OAuth2.0手动创建一个新客户端来Google API console更新 SHA1。
根据Google Developers 视频,这很糟糕,该视频表示OAuth2.0应该在 中创建客户端Google Play Developer console,因为它将自动创建客户端 ID 并将其与Achievements和关联Leaderboards。如果在 中以相反的方式创建Google API console,则不会有链接,并且会返回有效的登录名,但不知道应该使用哪个登录名Achievements,Leaderboards并且会返回错误。
由于 中的链接应用程序在Google Play Developer console发布后无法再删除,因此我们将它们重命名,以便它们列在链接应用程序 (zz-mygame) 的底部,并且删除了我们在 中OAuth 2.0手动创建的客户端,Google API console因为它们不是不管怎样,与...一起工作Google Play services。
然后,我们在游戏的游戏服务部分创建了新的链接应用程序Google Play Developer Console,添加了正确的 SHA1,这生成了一个OAuth 2.0与Play services. 然后,我们在Google API console“凭据”部分中进行了检查,发现OAuth 2.0添加了一个新客户端,并且该客户端具有与Google Play Developer console.
经过这些更改后,成就工作正常,并且当使用开发版本和具有测试访问权限的用户测试游戏时Google Play Game Services,成就现在将显示在 中Google Play Games App,并带有一个列出所有成就的自己的选项卡。而且,中的错误Google API console不再发生。
| 归档时间: |
|
| 查看次数: |
3658 次 |
| 最近记录: |