2013-12-18 5 views
11

Я создаю приложение, которое транслирует музыку. Я пытаюсь отобразить на экране блокировки метаданные (название, художник и изображение обложки).MPNowPlayingInfoCenter AVPlayer на iOS 7

MPNowPlayingInfoCenter кажется, работает хорошо с MediaPlayer.framework, но я не могу понять, чтобы заставить его работать с AVPlayer на прошивке 7.

Игрок хорошо работает в фоновом режиме благодаря AVAudioSession:

AVAudioSession *session = [AVAudioSession sharedInstance];  
[session setCategory:AVAudioSessionCategoryPlayback error:&error]; 
[session setActive:YES error:&error]; 

Вот мой код для отображения метаданных на заблокированном экране (, который не работает):

Class playingInfoCenter = NSClassFromString(@"MPNowPlayingInfoCenter"); 

if (playingInfoCenter) 
{ 
    NSDictionary *nowPlaying = @{MPMediaItemPropertyArtist: currentTrack.artist, 
           MPMediaItemPropertyAlbumTitle: currentTrack.title}; 

    [[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:nowPlaying]; 
}   

Любая помощь будет оценена по достоинству!

Спасибо за чтение этого :)

ответ

14

нашел ответ на мой вопрос!

При использовании фонового звука, необходимо указать, что ваше приложение может получил дистанционное управление События:

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
+0

где вы положили эту строку кода? – justicepenny

+0

Когда я начинаю играть песню. Я тоже называю этот метод, когда я больше не играю: [[UIApplication sharedApplication] endReceivingRemoteControlEvents]; –

+0

Спасибо за ваш ответ. на самом деле все еще не повезло, я использую https://github.com/mattgallagher/AudioStreamer, чтобы передать радио. Я хочу показать изображение радиостанции на экране блокировки, все данные есть. просто не показывайте на экране блокировки :( – justicepenny

Смежные вопросы