android - Google Play 游戏服务注销回调

标签 android libgdx google-play google-play-services google-play-games

我正在尝试为我的应用程序实现 Google Play 游戏服务。我设法让用户在启动时自动登录,并显示排行榜,上传玩家的分数。

我也想处理玩家注销。目前,玩家可以从 Google Play 服务排行榜窗口注销。我的问题是如何实现一个接口(interface)来检测用户从服务窗口注销。

http://i.imgur.com/FlAVSbF.jpg

最佳答案

API 中没有注销回调。您可以查看 GoogleAPIClient.isConnected() ,或者如果使用 C++ SDK,请调用 gpg::GameServices::IsAuthorized()

所以当你显示排行榜时,你可以检查 onActivityResult 看看它们是否连接。如果不是,则很可能意味着他们已从“设置”菜单中退出。

public void showLeaderboard()
{
startActivityForResult(Games.Leaderboards.getLeaderboardIntent(mGoogleApiClient,
        LEADERBOARD_ID), REQUEST_LEADERBOARD);
}

public void onActivityResult(int requestCode, int resultCode, Intent data) {

  if (requestCode == REQUEST_LEADERBOARD) {
      // check if user signed out
      mExplicitSignOut = mGoogleApiClient != null && !mGoogleApiClient.isConnected();
  }
  // rest of onActivityResult... 
}

关于android - Google Play 游戏服务注销回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33522438/

相关文章:

android - 是否可以在 Android 应用程序安装期间强制执行 EULA?

android - 改造项目列表始终为空

java - Android list 属性 "name"文件错误

android - "breakpoint command add"在 Android Studio 的 LLDB 命令行中不起作用

android - 我想在我的Android应用中阅读android Play商店应用的评分

android - 从 Google Play 中删除过时的测试版

java - eclipse无法导入java.util?

java - LibGDX 鼠标位置在世界偏差中

java - Kryonet 客户端超时后断开连接

java - Box2DDebugRenderer 和 SpriteBatch 错位