У меня есть приложение, которое будет отслеживать все, что пользователь делает в приложении 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