Запросить игровые сервисы Google для текущих матчей

Я реализую пошаговые игровые сервисы для простой игры: https://developers.google.com/games/services/android/turnbasedMultiplayer

В соответствии с рекомендациями я использую класс GameHelper из basegameutils.

Я хочу сохранить некоторые неактуальные данные (статистику), чтобы не отправлять их между игроками. Я сохраняю эти данные локально (sqlite), связывая их с TurnBasedMatch.getMatchId().

Что мне нужно знать, так это как запросить игровые сервисы Google (я думаю, через GameHelper), которые являются текущими совпадениями для подписанного игрока, чтобы я мог удалить старые локальные данные.

Спасибо.


person pauminku    schedule 23.05.2014    source источник


Ответы (1)


Глядя лучше на документацию, я наконец нашел решение для этого.

Если ваша деятельность распространяется с BaseGameActivity, вы можете сделать следующее:

Games.TurnBasedMultiplayer.loadMatchesByStatus(getApiClient(),
            TurnBasedMatch.MATCH_TURN_STATUS_COMPLETE,                
            TurnBasedMatch.MATCH_TURN_STATUS_MY_TURN,
            TurnBasedMatch.MATCH_TURN_STATUS_THEIR_TURN)
            .setResultCallback(deleteNotPresentMatches);

используя собственный обратный вызов, например:

private ResultCallback<TurnBasedMultiplayer.LoadMatchesResult> deleteNotPresentMatches = new ResultCallback<TurnBasedMultiplayer.LoadMatchesResult>() {
    public void onResult(TurnBasedMultiplayer.LoadMatchesResult r) { 
        //whatever you want, in my case delete local data for old matches
    }
};
person pauminku    schedule 23.05.2014