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

Dav*_* B. 5 android multiplayer libgdx google-play-services google-play-games

我正在尝试使用Google Play游戏服务在我的Android游戏中实现实时多人游戏,但是当我调用的方法被调用时,我遇到了一个问题.onRoomCreated

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

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

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

但如果我打电话,没有变化getApiClient().reconnect().所以我真的很感激任何帮助.有关信息,请getApiClient()参阅GameHelper我扩展的类,该类在Android示例页面的库中提供.

abi*_*ita 1

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

您可以访问此页面了解更多信息。

如果您忘记了某些内容,还可以查看此文档,了解如何使用 Google Play 开发者控制台设置 Google Play 游戏服务。