用于生产的 Google 游戏服务 OAuth 密钥

Posted

技术标签:

【中文标题】用于生产的 Google 游戏服务 OAuth 密钥【英文标题】:Google Game Services OAuth key for production 【发布时间】:2014-02-28 10:40:04 【问题描述】:

我在应用程序中添加了 Google 游戏服务(排行榜、成就)。在我的机器上调试时一切正常............

https://cloud.google.com/console 中的 OAuth 客户端 ID(用于调试)类似于 6666666.apps.googleusercontent.com

我尝试生成新的 OAuth 客户端(用于生产,带有发布密钥)......并且......谷歌生成了一个名称类似于“6666666-somenoise.apps.googleusercontent.com”的客户端......不工作!它总是说“应用程序配置错误”.. 但一切都是正确的 APP_ID、SHA1 和包名称。

Google 游戏服务故障排除文档毫无用处。

我再次制作了一个测试应用程序.. 它可以正常工作(客户端 ID 像上面的示例一样生成.. 没有噪音)...

所以。当然我可以删除我当前的项目..并再次创建..默认情况下使用发布密钥配置..但这不是一种方法!我们在该项目中添加了 100 项成就......所有翻译(多种语言)......谷歌当然不允许导出/导入它们:(

【问题讨论】:

根据文档...“警告:不要从 Google Developers Console 为您的游戏创建新的客户端 ID。如果这样做,Play 游戏服务不会将您的游戏设置与客户端相关联ID,这可能会导致游戏过程中出现错误。” .... 该选项只能访问一次。我应该为现有的应用程序做什么? 【参考方案1】:

关于更改客户端 ID 以进行 Google+ 身份验证的更多信息

仅供参考,您可以在https://console.developers.google.com 上管理客户端 ID。请参阅下面屏幕截图中选择的菜单选项(实际值不在图片中,但您应该可以通过这种方式找到它)。

Google Play 游戏服务

如果您按照https://developers.google.com/games/services/console/enabling 中的步骤将应用链接到您的游戏服务,这是游戏服务流程的一部分。请参阅第 3 步。生成 OAuth 2.0 客户端 ID

但是,如果您再次使用同一个包链接游戏,则会跳过此向导,因此无法从玩游戏控制台更改 SHA1 值。

【讨论】:

【参考方案2】:

最后这个问题被一个未知的奇迹解决了。

如何解决:

    删除在 cloud.gogle.com 中创建的所有客户端 ID。 在“游戏服务”中从您的游戏中删除链接的应用程序。 (play.google.com/apps/publish) 去抽烟... 2-3 小时.. 也许更多... 让谷歌删除那些 ID (我猜他们将它们标记为已删除......如果你尝试创建一个新的 一个.. 他们会重复使用删除键) 转到游戏服务关联应用 (play.google.com/apps/publish) 为前“我的游戏调试”添加一个新的链接应用程序...然后按 “授权” ...此处创建的密钥将起作用 为前“我的游戏发布”添加一个新的链接应用程序...然后按 “授权” .. 此处创建的密钥将起作用。

【讨论】:

以上是关于用于生产的 Google 游戏服务 OAuth 密钥的主要内容,如果未能解决你的问题,请参考以下文章

Google Play 游戏服务测试 - OAuth 失败?

Google Play 游戏服务不工作... 是不是需要 OAuth 同意屏幕?

通过 oauth 游乐场为 android 应用程序重置 Google 游戏服务成就?

Google Play Games 服务可以用于非游戏吗

Google Play 游戏服务 - 登录失败(OAUTH2:UNREGISTERED_ON_API_CONSOLE)

用于服务应用程序的 Google oAuth 2.0(JWT 令牌请求)