iPhone ios4 - Замена значка док-станции iPod при воспроизведении фонового аудиопотока

Я выяснил, как я могу воспроизвести звук в фоновом режиме на ios4, однако я заметил, что некоторые приложения также заменяют значок док-станции iPod своим собственным значком приложения. (Например, Last.fm & Spotify).

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

Кто-нибудь знает как это сделать?

Спасибо


person AggroPanda    schedule 29.07.2010    source источник


Ответы (1)


Вам просто нужно реагировать на события удаленного управления. Это также позволяет вам управлять своим приложением с помощью гарнитуры.

Допустим, вызов viewDidLoad:

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

И вы должны ответить на оба

- (BOOL)canBecomeFirstResponder {
return YES;
}

И

- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
    switch (event.subtype) {
        case UIEventSubtypeRemoteControlTogglePlayPause:
            if (audio.rate == 0.0) {
                [audio play];
            } else {
                [audio pause];
            }
            break;
        case UIEventSubtypeRemoteControlPlay:
            [audio play];
            break;
        case UIEventSubtypeRemoteControlPause:
            [audio pause];
            break;
        default:
            break;
    }
}
person Bjarne Mogstad    schedule 29.07.2010
comment
потрясающе спасибо, я попробую. есть ли у вас идеи по поводу замены значка док-станции iPod на значок моего собственного приложения? - person AggroPanda; 30.07.2010
comment
Реализовав это, Apple поместит ваш значок в док - person Bjarne Mogstad; 01.08.2010
comment
Фактически, вы должны вызвать beFirstResponder внутри viewDidAppear, иначе он не сработает, и вы никогда не получите события удаленного управления. stackoverflow.com/questions/3456435 / - этот пост полезнее. - person Ben Affleck; 19.05.2011