В контроллере вида для моего аудиоплеера я добавил это:
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
[self becomeFirstResponder];
}
- (void) viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[[UIApplication sharedApplication] endReceivingRemoteControlEvents];
[self resignFirstResponder];
}
- (BOOL)canBecomeFirstResponder {
return YES;
}
Это переключает значок в элементах управления плеером со значка iPod на мое собственное приложение, а также помещает маленький значок воспроизведенияв строке состояния.
Далее я добавил это в свой контроллер представления для обработки удаленных событий:
- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
NSLog(@"REMOTE EVENT!");
switch (event.subtype) {
case UIEventSubtypeRemoteControlTogglePlayPause:
[streamer pause];
break;
case UIEventSubtypeRemoteControlPlay:
[streamer start];
break;
case UIEventSubtypeRemoteControlPause:
[streamer pause];
break;
case UIEventSubtypeRemoteControlStop:
[streamer stop];
break;
default:
break;
}
}
Однако это никогда не вызывается.Я пытался вызвать элементы управления воспроизведением, когда приложение работало, я попытался вернуться на домашний экран и нажать некоторые элементы управления воспроизведением, и я попробовал элементы управления моих наушников.Всем не повезло.
У кого-нибудь есть указания относительно того, где я могу ошибаться?
Спасибо.