用户退出Google Play游戏服务

时间:2015-07-12 20:46:52

标签: android google-play-games

当用户明确退出Google Play游戏服务时,我认为他们希望保持退出状态,但如何确定他们是否已完成此操作?

当我退出时,onActivityResult() resultCode 10001 ,即defined as

  

当需要重新连接时,结果代码会发送回调用Activity。

     

GoogleApiClient处于不一致状态,必须重新连接到该服务才能解决问题。使用当前连接进一步调用服务不太可能成功。

我不确定将此结果代码视为明确退出是否安全,或者在用户不想保持退出的其他情况下可能会发生这种情况。<\ n> / p>

所以我的问题是:我如何确定用户已明确退出Google Play游戏以获取我的应用?

2 个答案:

答案 0 :(得分:0)

根据Games API文档(下面链接),您可以使用Games.signOut()API异步注销当前用户。

希望这将是适用于您的方案的适当API。

https://developers.google.com/android/reference/com/google/android/gms/games/Games.html#signOut(com.google.android.gms.common.api.GoogleApiClient)

答案 1 :(得分:0)

您从游戏活动中获取结果代码的唯一原因是,如果用户已通过Google提供的用户界面退出(除非发生任何非常奇怪的事情)。因此,在这种情况下,您可以合理地假设用户已退出。

但是,如果您要检查此内容,则可以尝试使用Games API重新连接GoogleApiClient。如果用户已明确注销,则总是会失败,结果为SIGN_IN_REQUIRED。

正如@TimSim所提到的,如果希望在游戏中提供注销功能,则可以使用Games.signOut API。