iOS: обрабатывать события дистанционного управления, а затем передавать события музыкальным приложениям

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

Я не могу найти четкие инструкции в разделе документации Apple по событиям дистанционного управления: http://developer.apple.com/library/ios/#documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/Remote-ControlEvents/Remote-ControlEvents.html#//apple_ref/ док / UID /TP40009541-СН7-SW3

Здесь говорится:

iOS преобразует команды в объекты UIEvent и доставляет события в приложение. Приложение отправляет их первому респонденту, и, если первый респондент не обрабатывает их, они перемещаются по цепочке респондента. Для получения дополнительной информации о цепочке респондента см. "Цепочка респондента следует определенному пути доставки".

Так что я думал, что место

[[self nextResponder] remoteControlReceivedWithEvent: receivedEvent];

в конце моего метода обработчика событий, ожидая, что после того, как мой обработчик будет завершен, музыкальное приложение, воспроизводимое в данный момент, например встроенный музыкальный проигрыватель, сможет получить событие. Но, к моему удивлению, этого не произошло.

Что мне здесь не хватает?

1 ответ

Решение

Убедитесь, что вы вызываете следующие методы, чтобы начать получать события.

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
[self becomeFirstResponder];

Затем в вашем приложении делегат вам необходимо прослушивать события.

-(void)remoteControlReceivedWithEvent:(UIEvent *)event{
    if (event.type == UIEventTypeRemoteControl){
        switch (event.subtype) {
            case UIEventSubtypeRemoteControlTogglePlayPause:
                break;
            default:
                break;
        }
    }
}
Другие вопросы по тегам