iPodMusicPlayer не отправляет уведомления, если он создан в фоновом режиме - PullRequest
2 голосов
/ 04 мая 2010

Если iPodMusicPlayer создается в фоновом режиме, я не отправляю уведомления об изменениях состояния воспроизведения.

Вот код:

- (void)initMusicPlayer {
    musicPlayer = [MPMusicPlayerController iPodMusicPlayer];

    NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
    [notificationCenter addObserver:self selector:@selector(musicPlayerStateChanged:) 
            name:MPMusicPlayerControllerNowPlayingItemDidChangeNotification 
            object:musicPlayer];
    [notificationCenter addObserver:self selector:@selector(musicPlayerStateChanged:) 
            name:MPMusicPlayerControllerPlaybackStateDidChangeNotification 
            object:musicPlayer];
    [musicPlayer beginGeneratingPlaybackNotifications];
}

- (void)viewDidLoad {
    [self performSelectorInBackground:@selector(initMusicPlayer) withObject:nil];
}

Есть ли какой-нибудь способ, как создать iPodMusicPlayer в фоновом режиме? В противном случае, если он создается в главном потоке, он временно блокирует выполнение.

1 Ответ

2 голосов
/ 04 мая 2011

Музыкальный проигрыватель должен использоваться в главном потоке.

https://developer.apple.com/library/ios/#documentation/MediaPlayer/Reference/MPMusicPlayerController_ClassReference/Reference/Reference.html%23//apple_ref/doc/uid/TP40008221

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...