2016-05-17 4 views
1

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

Вот как настроить мой контроллер:

self.player = [MPMusicPlayerController applicationMusicPlayer]; 
self.player.repeatMode = MPMusicRepeatModeNone; 
self.player.shuffleMode = MPMusicShuffleModeOff; 
[self.player beginGeneratingPlaybackNotifications]; 

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handlePlaybackStateChanged:) name:MPMusicPlayerControllerPlaybackStateDidChangeNotification object:self.player ]; 


[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleItemChanged:) name:MPMusicPlayerControllerNowPlayingItemDidChangeNotification object:self.player ]; 

Тогда я играю яблочные музыкальные композиции:

NSMutableArray *storeIDS = [NSMutableArray arrayWithObjects:anthem.song.apple_id, @"1", nil]; 

[self.player setQueueWithStoreIDs:storeIDS]; 
[self.player play]; 
[self.player setCurrentPlaybackRate:1.0]; 

Для справки, вот как я могу настроить управление слушатель дистанционного в didFinishLaunchingWithOptions:

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

На этом этапе игрок воспроизводит песню в соответствии с запросом, но я не могу nger получает уведомления о дистанционном управлении. Нажатие next/prev просто останавливает песню, так как она дошла до конца списка. Я пробовал использовать applicationMusicPlayer, а также systemMusicPlayer. Я не могу использовать AVPlayer или AVAudioPlayer, потому что это Apple Music, и я не могу получить URL-адрес для потока.

Любые идеи !?

ответ

0

Чтобы играть от Apple Music использовать MPMusicPlayerController.systemMusicPlayer()

+0

Эй, проблема все еще происходит с systemMusicPlayer – evenodd