Ho un'app che terrà traccia di tutto ciò che l'utente fa nell'app iPod. Per fare questo, ho aggiunto pochi osservatori a NSNotificationCenter, come MPMusicPlayerControllerNowPlayingItemDidChangeNotification. Ma il mio problema è che ottengo solo quelle notifiche quando la mia app è in primo piano, se è in background, il sistema aggiunge la notifica a una coda, e poi la prossima volta che la mia app diventa attiva me la consegna. Non ho alcun interesse in questa coda, dal momento che voglio ricevere notifiche in tempo reale.Ricezione di notifiche con l'app in modalità background
C'è un modo per me per ottenere le notifiche, anche se la mia app è in stato di sospensione? Voglio eseguire solo 3 righe di codice ogni volta che ottengo le notifiche NowPlayingItemDidChange ad esempio.
Qui è dove aggiungo l'osservatore.
MPMusicPlayerController *iPodMediaPlayer = [MPMusicPlayerController iPodMusicPlayer];
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter addObserver: self selector: @selector(handle_NowPlayingItemChanged:) name:MPMusicPlayerControllerNowPlayingItemDidChangeNotification
object:iPodMediaPlayer];
[iPodMediaPlayer beginGeneratingPlaybackNotifications];
Inoltre, se si aggiunge un altro tipo di oggetto all'osservatore anziché iPodMediaPlayer, l'osservatore non chiamare il metodo.
Grazie mille, applicazioni
Abras
Sì, so che ci sono solo queste tre opzioni. Ma ho pensato che forse c'è un modo per registrare la notifica nel sistema, quindi la tua app entrerà normalmente in modalità background. Se l'utente fa qualcosa che fa scattare la notifica, il Centro di notifica dovrebbe riattivare la tua app solo per poter rispondere alla notifica. Dopo aver risposto, tornerebbe alla modalità background normalmente. – Abras
@Abras: hai scoperto come farlo? Ho un'app audio. E voglio che esso riceva le notifiche (quando arrivano altre app audio) quando è in background. Come lo faccio? – Namratha
@Abras Lo hai mai capito? – WMios