Comment faire pour que mon application fonctionne avec les buttons de contrôle du média sur l'écran de locking?

Dans les versions récentes d'iOS, les applications ont une sorte d'access aux buttons de contrôle des médias sur l'écran de locking, comme le button Lecture / Pause:

entrez la description de l'image ici

Il semble que les buttons soient supposés fonctionner avec la class MPMusicPlayerController , n'est-ce pas? Existe-t-il un moyen d'get les events "bruts" à partir des buttons? Parce que le lecteur de musique semble seulement offrir une API pour fournir un tas de MPMediaItem s. Que faire si mon application est par exemple une radio qui doit gérer les buttons différemment?

Après un peu plus de search, j'ai trouvé cette question connexe qui rend les choses claires. La class de controller de lecteur de musique n'est pas vraiment la bonne voie, l'astuce consiste à s'abonner à des events distants dans votre controller:

 - (void) viewDidAppear: (BOOL) animated { [super viewDidAppear:animated]; [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; [self becomeFirstResponder]; } - (BOOL) canBecomeFirstResponder { return YES; } - (void) remoteControlReceivedWithEvent: (UIEvent*) event { // see [event subtype] for details }