Если мое понимание верно, единственный способ обновить свойство matchData середины поворота GKTurnBasedMatch - это [_currentMatch endTurnWithNextParticipant: _currentParticipant matchData: matchData завершениеHandler: nil].
Это хорошо работает, если игрок Game Center установил игру только на одном устройстве, поскольку уведомление доставляется на устройство в виде сообщения в приложение. Таким образом, уведомление может быть скрыто, пока пользователь в данный момент воспроизводит свою очередь. Однако, если у пользователя установлена игра на нескольких устройствах, другие устройства получат push-уведомление «Ваш ход». Это сбивает с толку пользователя, особенно я обновляю matchData несколько раз.
Между прочим, я понимаю, что, возможно, я не использую функцию endTurnWithNextParticipant: matchData: завершенииHandler: функцию, как это было задумано (потому что я на самом деле не заканчиваю совпадение ... но просто обновляю matchData). Тем не менее, похоже, нет альтернативы для обновления состояния матча в середине хода.