android - Google Play 游戏服务 - 实时多人游戏 - STATUS_CLIENT_RECONNECT_REQUIRED

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

我正在尝试在我的 Android 游戏中使用 Google Play 游戏服务,但在调用我覆盖的 onRoomCreated 方法时我遇到了问题。

  @Override
  public void onRoomCreated(int statusCode, Room room) {
    if (statusCode != GamesStatusCodes.STATUS_OK) {
      stopKeepingScreenOn();
      showGameError();
      return;
    }
    roomId = room.getRoomId();
    showWaitingRoom(room);
  }

状态码总是不同于GamesStatusCodes.STATUS_OK,实际上等于2(+ room参数为null),这意味着根据Google :

The GoogleApiClient is in an inconsistent state and must reconnect to the service to resolve the issue. Further calls to the service using the current connection are unlikely to succeed.

但是如果我调用 getApiClient().reconnect() 没有任何变化。所以我真的很感激任何帮助。有关信息,getApiClient() 来 self 扩展的 GameHelper 类,它在 Android samples page 的库中提供。 .

最佳答案

onRoomConnected 在客户端尝试创建实时房间时被调用。实时房间可以通过调用createRoom(RoomConfig)操作来创建,该操作为当前游戏创建一个实时房间。当前游戏与房间的连接的生命周期绑定(bind)到此 GamesClient 的生命周期。当客户端断开连接时,玩家将离开房间,并且该玩家的所有点对点连接都将被断开。

可以访问这个page获取更多信息。

你也可以查看这个document了解如何使用 Google Play Developer Console 设置 Google Play 游戏服务(如果您忘记了什么)。

关于android - Google Play 游戏服务 - 实时多人游戏 - STATUS_CLIENT_RECONNECT_REQUIRED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35904481/

相关文章:

libgdx - 在 libgdx 中高效使用多个纹理

android - Google Play App Signing 服务的主要优势是什么?

android - Android 版 Google Analytics - 如何恢复 session

Android GDB 未加载 C++ 共享库

Android Facebook 登录问题?

java - 处理多个按钮的 android onclick(总共 81 个)

libgdx - 如何让 Sprite 支持不同的屏幕尺寸?

android - 这里 SDK Android 缩放到几个标记

java - 从 SurfaceView 和 Canvas 到 libGDX

firebase - Xamarin FirebaseApp.InitializeApp(this) 在 60.1142.1 中返回 null