当用户明确退出Google Play游戏服务时,我认为他们希望保持退出状态,但如何确定他们是否已完成此操作?
当我退出时,onActivityResult()
resultCode
是 10001 ,即defined as:
当需要重新连接时,结果代码会发送回调用Activity。
GoogleApiClient处于不一致状态,必须重新连接到该服务才能解决问题。使用当前连接进一步调用服务不太可能成功。
我不确定将此结果代码视为明确退出是否安全,或者在用户不想保持退出的其他情况下可能会发生这种情况。<\ n> / p>
所以我的问题是:我如何确定用户已明确退出Google Play游戏以获取我的应用?
答案 0 :(得分:0)
根据Games API文档(下面链接),您可以使用Games.signOut()API异步注销当前用户。
希望这将是适用于您的方案的适当API。
答案 1 :(得分:0)
您从游戏活动中获取结果代码的唯一原因是,如果用户已通过Google提供的用户界面退出(除非发生任何非常奇怪的事情)。因此,在这种情况下,您可以合理地假设用户已退出。
但是,如果您要检查此内容,则可以尝试使用Games API重新连接GoogleApiClient。如果用户已明确注销,则总是会失败,结果为SIGN_IN_REQUIRED。
正如@TimSim所提到的,如果你希望在游戏中提供注销功能,则可以使用Games.signOut API。