2016-06-13 2 views
0

Я создаю RealTime многопользовательской игры и после того, как зал ожидания активности начинается, активность сразу же заканчивая кодом результата 10001 (GamesActivityResultCodes.RESULT_RECONNECT_REQUIRED)Приемная отделка с результатом RESULT_RECONNECT_REQUIRED

Такое поведение является странным, потому что в комнате по-прежнему создается, и если другой игрок запускает комнату ожидания для случайного автосогласования, Google автоматически сопоставляет их, даже если комната ожидания закрыта. Такое поведение не происходит со всеми пользователями. Только для нескольких пользователей.

Это код, который начинается в режиме ожидания:

final int MIN_PLAYERS = Integer.MAX_VALUE; 
    Intent i = Games.RealTimeMultiplayer.getWaitingRoomIntent(RGoogleAPI.getGoogleApiClient(), room, MIN_PLAYERS); 
    mWaitingRoom = room; 

    // show waiting room UI 
    startActivityForResult(i, RC_WAITING_ROOM); 

Я хочу отметить, что даже если я хочу, чтобы показать Leaderboard или достижений, является стил возврата кода RESULT_RECONNECT_REQUIRED и полноразмерного заканчивает

ответ

0

Константа: 10001 или RESULT_RECONNECT_REQUIRED - это код результата, отправленный обратно в вызывающую активность, когда требуется повторное подключение.

GoogleApiClient находится в противоречивом состоянии и должен повторно подключиться к службе для решения проблемы. Дальнейшие вызовы службы, использующие текущее соединение, вряд ли удастся.

Вы также можете найти в getAchievementsIntent() and getAllLeaderboardsIntent(), что R ESULT_RECONNECT_REQUIRED может быть возвращен как resultCode в onActivityResult(int, int, Intent), если GamesClient окажется в противоречивом состоянии.

Проверьте решение здесь в этом SO question, оно также может помочь вам решить вашу проблему.

+0

У меня такая же проблема, но я не нашел никакого решения. Вы можете мне помочь? –

Смежные вопросы