У меня есть приложение, которое будет отслеживать все, что пользователь делает в приложении 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
Да, я знаю, что есть только три варианта. Но я подумал, что, возможно, есть способ зарегистрировать уведомление в системе, тогда ваше приложение будет нормально работать в фоновом режиме. Если пользователь делает что-то, что вызывает уведомление, Центр уведомлений разбудит ваше приложение, чтобы оно могло ответить на уведомление. После ответа он вернется в фоновый режим как обычно. – Abras
@Abras: Вы узнали, как это сделать? У меня есть аудио приложение. И я хочу получать уведомления (когда появляются другие звуковые приложения), когда они находятся в фоновом режиме. Как мне это сделать? – Namratha
@Abras Вы когда-нибудь это выясняли? – WMios