Я создаю приложение для iPhone, которое обрабатывает музыку, воспроизводящую &, приостанавливая и сохраняя собственный список воспроизведения. Я пытаюсь сделать функции дистанционного управления воспроизведением/паузой (на наушниках и слайд-экране) работать для воспроизведения музыки в моем приложении.MPRemoteCommandCenter Обработчики событий никогда не запускались
Вот код, который я ввел в метод инициализации, связанный с музыкальным проигрывателем (который является экземпляром MPMusicPlayerController, и я уверен, что через отладку вызывается этот блок кода), я расскажу о проблеме I «м лицо после того, как код:
[self.musicController beginGeneratingPlaybackNotifications];
// listen to remote control events
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
if ([self canBecomeFirstResponder]) {
NSLog(@"Can be first responder");
[self becomeFirstResponder];
NSLog([NSString stringWithFormat: @"is first responder now? %@", [self isFirstResponder] ? @"yes" : @"no"]);
} else {
NSLog(@"Cannot be first responder");
}
MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];
[commandCenter.togglePlayPauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: toggle command");
return nil;
}];
[commandCenter.playCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: play command");
return nil;
}];
[commandCenter.pauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: pause command");
return nil;
}];
моей проблемы: после добавления выше коды, при нажатии на кнопку воспроизведения/паузы на экране слайда-вверх, когда музыка играет в моем приложении, сообщение отладки не отображается в журнал, то есть блок обработчика событий не запускался.
И когда я нажимаю кнопку воспроизведения/паузы на своих яблочных ушных вкладышах, когда музыка играет в моем приложении, система начинает воспроизводить случайную музыку в моей музыкальной библиотеке iOS, и песня, которую она играет, не появляется в список воспроизведения моего приложения, что означает, что нет законного способа воспроизвести эту песню из моего приложения, за исключением выполнения вышеуказанных шагов.
Примечание: журнал имеет выход «Не может быть первым ответчиком».