我目前正在将Google Play游戏服务应用到我的游戏中,以提供多人实时游戏功能(使用libgdx和BaseGameUtils)。Google Play游戏服务登录问题
一切工作正常我的Nexus 4与我的主要谷歌帐户(登录,创建一个房间等),称它为“A”。
为了测试自动匹配和消息发送/接收,我创建了第二个Google帐户,称之为“B”,并将此帐户添加到我的(工厂重置的)Samsung Galaxy Tab中。
起初在那里工作的一切都很好 - 我能够创建一个自动匹配的房间,发送和接收短信等,但经过15分钟的测试后,我无法再登录帐户“B” Galaxy Tab。 Nexus 4上的帐户“A”仍能正常工作。
为了排除设备的任何问题,我已将帐户“A”添加到我的Galaxy Tab并且登录成功。我还将帐户“B”添加到我的Nexus 4,并且登录无效。
等待一段时间(30分钟)后,立即用账户“B”登录再次在两台设备上工作。 这就是我目前的状态:我可以使用帐户“B”进行一些测试,但在很短的时间后,它会被“封锁”,我必须等待,直到我可以再次使用它。帐户“A”始终有效。虽然这个“阻塞”时间,我试过一切:删除应用程序数据/缓存,删除播放服务数据/缓存,取消与我的“B”帐户的应用程序。什么都没有 这里的logcat的输出,如果我想用帐户“B”登录,而它是“封杀”:
07-27 13:20:35.508: I/dul(13742): I/O exception (org.apache.http.NoHttpResponseException) caught when processing request: The target server failed to respond
07-27 13:20:35.508: I/dul(13742): Retrying request
07-27 13:20:35.808: E/Volley(13742): [1224] ip.a: Unexpected response code 403 for https://www.googleapis.com/games/v1/players/102515671693140579145
07-27 13:20:35.818: E/SignInIntentService(13742): Access Not Configured
07-27 13:20:35.818: E/SignInIntentService(13742): ark
07-27 13:20:35.818: E/SignInIntentService(13742): at ams.b(SourceFile:189)
07-27 13:20:35.818: E/SignInIntentService(13742): at ams.a(SourceFile:111)
07-27 13:20:35.818: E/SignInIntentService(13742): at adz.a(SourceFile:220)
07-27 13:20:35.818: E/SignInIntentService(13742): at adz.a(SourceFile:201)
07-27 13:20:35.818: E/SignInIntentService(13742): at adi.a(SourceFile:489)
07-27 13:20:35.818: E/SignInIntentService(13742): at att.a(SourceFile:221)
07-27 13:20:35.818: E/SignInIntentService(13742): at com.google.android.gms.games.service.GamesSignInIntentService.onHandleIntent(SourceFile:343)
07-27 13:20:35.818: E/SignInIntentService(13742): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
07-27 13:20:35.818: E/SignInIntentService(13742): at android.os.Handler.dispatchMessage(Handler.java:99)
07-27 13:20:35.818: E/SignInIntentService(13742): at android.os.Looper.loop(Looper.java:137)
07-27 13:20:35.818: E/SignInIntentService(13742): at android.os.HandlerThread.run(HandlerThread.java:60)
07-27 13:20:35.818: E/LoadSelfFragment(16159): Unable to sign in - application does not have a registered client ID
当然我有注册的客户端ID,否则我无法帐号登录“ A“,有时候还带有账户”B“。当然,我在开发者控制台中将这两个帐户添加到了测试白名单。当然,我通过资源链接向我的清单添加了正确的应用程序ID。
我不认为这与我的代码有关,因为帐户A从来没有问题,帐户B“有时”工作。测试白名单中是否存在任何已知问题?或者你有什么建议如何解决这个问题?顺便说一句,我也不认为我的配额限制,因为这会影响两个帐户,不是吗?
我真的很感谢你的帮助
您已经发布的游戏吗?我在模拟器上测试时看到过这样的事情,但在玩过已发布游戏的真实设备上却没有。 – IanB
嗨,实际上游戏没有发布(所以我必须把测试帐户放在白名单上)。我不测试仿真器,只在真实设备上测试。 – mavoka
我的观点是,当游戏发布时你不太可能看到这个问题。发布它并尝试它可能会更快 - 我不明白在应用程序中这可能是一个问题。 – IanB