我创建了一个要使用GPGS的Android项目。我建立了项目,取得了一些成就。我使用BaseGameUtils
库作为基础。首先,该应用程序会询问我要使用哪个帐户,并且一切正常。
我可以使用以下代码打开Achievements活动:
if (gameHelper.isSignedIn()) {
startActivityForResult(Games.Achievements.getAchievementsIntent(gameHelper.getApiClient()), 101);
} else if (!gameHelper.isConnecting()) {
loginGPGS();
}
但是,如果我在那里,并且在该活动中打开选项菜单并退出,然后尝试再次打开成就,我的应用程序将崩溃,并显示一条消息,提示我在尝试获取成就之前应先登录。虽然这是正确的,但我假设
gameHelper.isSignedIn()
仅在用户登录后才返回true。BaseGameUtils
是否损坏,或者我丢失了什么? 最佳答案
这是on the Github issue tracker提出的确切问题。最终答复是:
这实际上不是错误-可以按预期工作。
启动GPGS活动时,必须使用startActivityForResult
启动它。如果用户单击退出,则GoogleApiClient
不会断开连接-只是处于“退出”状态。此处的onActivityResult
将返回状态RECONNECT_REQUIRED
。在这一点上,开发人员应该重新连接他们的客户端,并且生活如期进行。
关于android - Google Play游戏服务BaseGameUtils错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29356437/