我正在尝试按照Google的文档实施Google Play服务,当我尝试连接GameClient
时,我会看到以下内容:
E/Volley: [4953] il.a: Unexpected response code 401 for https://www.googleapis.com/games/v1/players/me
E/Volley: [4953] il.a: Unexpected response code 401 for https://www.googleapis.com/games/v1/players/me
E/SignInIntentService: There is no linked app associated with this client ID.
我已经检查过签署APK的证书的SHA1指纹,调试证书的SHA1以及提供给Google API的SHA1确实匹配了。我已经检查过应用程序ID是在应用程序项目的清单中声明的(我的情况是我的13位数字ID,而不是包含一个包的那个)。我还检查过我正在使用的测试帐户是否都列在开发者控制台中,它们是;他们每个人都是@ gmail.com,他们包括我的开发者地址。他们每个人都激活了Google Plus。
我是从API 16 S3设备和API 17 Google API模拟器尝试过的。应用程序的包名称在清单中,在开发人员控制台上正确声明,并与API包名称匹配。该应用程序被列为游戏服务的客户端,并显示为“准备测试”。
总之,我很难看出我的错误是什么以及我错过了什么。我想我也解决了Google的故障排除问题。我已经查看了StackOverflow上的主要问题,并且它们已被覆盖。不管是什么,我都想念,可能是我满脸通红。我能错过什么?
答案 0 :(得分:4)
我长时间陷入这个问题,直到我意识到我的应用程序中有两个名为“app_id”的字符串。一个来自Facebook SDK,另一个来自Google。我重命名了Google app_id(并更改了相应的清单参考),一切都很顺利。
您可能遇到类似的问题。如果您看不到错误,那么我会尝试将app_id写入syslog以确认这不是问题的原因。
顺便提一下,我所有的Google app_id(客户ID)都是12个字节而不是13个,所以也许你应该先检查一下。
祝你好运!答案 1 :(得分:2)
即使重做了所有内容,所有内容,我仍然遇到了同样的问题。但是,我后来在Google API上遇到了“此软件包已在使用中”的错误消息,即使我已取消删除所有项目并删除所有客户端,然后再将其删除。
这是一个祝福:解决方法是在将新指纹添加到另一个新客户端ID的Google API之前重新创建我的调试密钥。
然后......我原来的问题就消失了。
答案 2 :(得分:2)
我遇到了同样的问题,对我来说,它可以重新链接Game services -> Linked apps -> Link another app
中的应用。
答案 3 :(得分:1)
您没有明确说明您正在测试的Gmail帐户是作为Google Plus用户添加到Google Plus社区中的,该社区被配置为您的应用的测试社区 - 或者您正在使用Google群组因为测试社区和那些Gmail帐户是该社区的一部分。
如果你已经完成了这些事情,那么可能是这里所述的问题:
https://code.google.com/p/google-plus-platform/issues/detail?id=554
这个答案对于解决您的问题可能听起来很鼓舞人心,但不要让您满意。我已经做了原始海报所做的所有事情,加上上面的事情,我仍然被卡住了。
我甚至已经遵循了这里所说的所有提示:
Google Play Game Services - unable to sign in
看起来谷歌让你陷入GPS的深渊远远超过我探测的深度。喜悦。
答案 4 :(得分:0)
我遇到了同样的问题,我不确定以下行动是解决问题但是值得尝试的行动,
似乎我没有启用Drive API,我在已启用的api中使用了它,但我必须实际单击它旁边的齿轮图标,然后单击启用并提供应用程序名称。
答案 5 :(得分:0)
只需链接同一个软件包,就像您在开发者控制台中拥有客户ID一样,并且#34; Debug&发布客户ID"
问题是如果您使用错误的SHA1指纹将您的应用链接到游戏服务,游戏服务将接收它并将其作为主要客户端ID关联。
将相同的应用再次链接到您的游戏服务后,它会自动获取其他客户ID
答案 6 :(得分:0)
您需要确保,您发布了Google Play服务设置。在此之前,它无法找到应用以进行帐户关联。
答案 7 :(得分:0)