【发布时间】:2014-03-20 21:31:02
【问题描述】:
在教程here 中,声明完全可以将两个 OAuth 2.0 客户端 ID 用于同一个包名称。
您应该创建两个客户端 ID,一个带有发布证书 指纹和另一个带有调试证书指纹的指纹。制作 确保两者使用相同的包名称。这允许玩游戏 识别来自您链接的 APK 的调用的服务 任一证书
所以我按照上面链接中的教程进行操作:首先转到Developer Console 中的Game Service,Add a new Game。然后我在这个游戏中添加了一个Linked app,它需要我创建一个 OAuth 2.0 客户端 ID。使用我的发布密钥的 SHA1 创建第一个客户端 ID 后,我找不到任何按钮来创建另一个客户端 ID。所以我去Cloud Developer Console,发现我可以在APIs & auth->Credentials下创建第二个客户端ID。我使用我的 debug.keystore 的 SHA1 作为第二个客户端 ID。然后我使用调试密钥和发布密钥编译和测试我的示例游戏。
但是,在运行应用并尝试登录后,结果是只接受使用发布密钥(使用第一个客户端 ID)的应用,而使用调试密钥(使用第二个客户端 ID)的应用) 不被接受。
然后我尝试在 Cloud Developer Console 中删除我的发布密钥的客户端 ID(以便调试密钥的客户端 ID 仍然是那里的唯一客户端 ID)并再次测试我的应用程序。这次接受了使用debug key的app,当然不接受使用release key的app了。
这是否意味着我不能为同一个包名创建多个 OAuth 2.0 客户端 ID?
【问题讨论】:
标签: android oauth google-play-services