2016-09-08 3 views
0

Вот пример:Как обрабатывать версии приложений в многопользовательском режиме в режиме реального времени с помощью игр Google Play?

  • Первая версия игры (v1) - начальные признаки многопользовательские.
  • Вторая версия игры (v2) - исправлены мелкие ошибки, по-прежнему совместимы с v1.
  • Третья версия игры (v3) - добавлена ​​новая механика геймплея, эта версия НЕ совместима с v1 и v2.

В этой ситуации я хочу, чтобы Службы Play Games разрешили автосоединение для версий v1 и v2, но игроки на v3 должны подключаться только к другому v3.

Как это сделать с помощью игр в Google Play в режиме реального времени?

ответ

1

В RoomConfig есть поле варианта, которое используется для соответствия игрокам. Значение варианта должно точно соответствовать для подключения игроков. Для получения дополнительной информации см: https://developers.google.com/android/reference/com/google/android/gms/games/multiplayer/realtime/RoomConfig.Builder.html#setVariant(int)

При создании комнаты ваш код будет выглядеть примерно так (где GameVersion это версия вашей игры):

int minPlayers = 2; 
    int maxPlayers = 2; 
    long bitmask = 0; 
    Bundle am = RoomConfig.createAutoMatchCriteria(minPlayers, maxPlayers, bitmask); 
    // build the room config 
    RoomConfig.Builder roomConfigBuilder = makeBasicRoomConfigBuilder(); 
    roomConfigBuilder.setAutoMatchCriteria(am) 
    .setVariant(GameVersion < 3 ? 1 : 3); 

    RoomConfig roomConfig = roomConfigBuilder.build(); 
    // create room: 
    Games.RealTimeMultiplayer.create(mGoogleApiClient, roomConfig); 
+0

Это именно то, что мне нужно, спасибо! – AlexeyGorovoy