Получение уведомлений с приложением в фоновом режиме

У меня есть приложение, которое будет отслеживать все, что пользователь делает в приложении iPod. Для этого я добавил в NSNotificationCenter несколько наблюдателей, например MPMusicPlayerControllerNowPlayingItemDidChangeNotification. Но моя проблема в том, Я получаю эти уведомления только тогда, когда мое приложение находится на переднем плане, если оно находится в фоновом режиме, система добавляет уведомление в очередь, а затем в следующий раз, когда мое приложение становится активным, оно доставляет его мне. Меня не интересует эта очередь, так как я хочу получать уведомления в реальном времени.

Могу ли я получить эти уведомления, даже если мое приложение находится в приостановленном состоянии? Я хочу запускать только 3 строки кода каждый раз, когда получаю это уведомление NowPlayingItemDidChange, например.

Вот куда я добавляю наблюдателя.

MPMusicPlayerController *iPodMediaPlayer = [MPMusicPlayerController iPodMusicPlayer];



NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];

     [notificationCenter addObserver: self selector: @selector(handle_NowPlayingItemChanged:) name:MPMusicPlayerControllerNowPlayingItemDidChangeNotification

                                    object:iPodMediaPlayer];


 [iPodMediaPlayer beginGeneratingPlaybackNotifications];

Кроме того, если я добавляю другой тип объекта к наблюдателю вместо iPodMediaPlayer, наблюдатель не будет вызывать метод.

Большое спасибо,

Abras

10
задан Abras 8 February 2011 в 00:08
поделиться