Я работаю над пошаговой игрой для iOS с использованием нового пошагового API iOS5.
Один из делегированных протоколов, который вам необходимо реализовать для этого, - это GKTurnBasedEventHandlerDelegate. Один из реализуемых методов - handleTurnEventForMatch. Это из документации Apple по этому методу:
handleTurnEventForMatch
Отправляется делегату, когда наступает очередь местного игрока действовать в пошаговом матче.
- (void)handleTurnEventForMatch:(GKTurnBasedMatch *)match
Параметры
совпадение - объект совпадения, содержащий текущее состояние совпадения.
Обсуждение
Когда ваш делегат получает это сообщение, игрок принял push-уведомление для уже идущего матча. Ваша игра должна завершить выполняемую задачу и переключиться на информацию о совпадении , предоставленную объектом match.
Большая часть моей игры работает. Я получаю уведомления о перемещениях, полученных указанным выше способом. Я также вижу значки на значках приложений, которые обновляются успешно.
Однако я не получаю никаких других системных уведомлений при наступлении событий поворота; ничего не отображается в центре уведомлений и т. д. Нужно ли мне делать что-то вне GameKit, чтобы включить это? Нужно ли мне вручную отправлять локальное уведомление, когда я получаю handleTurnEventForMatch? Документы, похоже, подразумевают, что нет, поскольку выше сказано: «Когда ваш делегат получает это сообщение, игрок принял push-уведомление для уже начавшегося матча».
Таким образом, это, похоже, подразумевает, что игрок нажал на push-уведомление чтобы вызвать этот метод (но, конечно, они никогда не появляются, поэтому у меня нет!)
Что мне нужно сделать, чтобы включить push-уведомления в моем приложении для пошаговых событий? Нужно ли мне на самом деле отправлять локальное уведомление, когда я получаю вышеуказанный метод (это может противоречить намерениям, учитывая многословие в приведенном выше документе).