2010-06-28 6 views

Répondre

2

Voir les docs Remote Control of Multimedia. Fondamentalement, vous avez juste besoin d'appeler -beginReceivingRemoteControlEvents sur votre instance d'application partagée, puis enregistrez quelque chose (probablement votre contrôleur de vue principal) en tant que premier répondeur et implémentez la méthode -remoteControlReceivedWithEvent: dessus. Vous obtiendrez des événements à la fois à partir des contrôles de l'écran de verrouillage et du sélecteur de casque, ainsi que les boutons de contrôle à gauche du tiroir multitâche. Pour lire de l'audio pendant que votre application n'est pas au premier plan, vous devriez également vérifier this information sur l'audio de fond.

0

C'est encore plus facile maintenant, à partir d'iOS 7. Voici l'exemple de la bascule lecture/pause (bouton du casque). Voir les documents pour MPRemoteCommandCenter et MPRemoteCommand pour plus d'options.

MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter]; 

    [commandCenter.togglePlayPauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent * _Nonnull event) { 
     NSLog(@"toggle button pressed"); 
     return MPRemoteCommandHandlerStatusSuccess; 
    }]; 

ou, si vous préférez utiliser une méthode plutôt que d'un bloc:

[commandCenter.togglePlayPauseCommand addTarget:self action:@selector(toggleButtonAction)]; 

Pour arrêter:

[commandCenter.togglePlayPauseCommand removeTarget:self]; 

ou:

[commandCenter.togglePlayPauseCommand removeTarget:self action:@selector(toggleButtonAction)]; 

Vous aurez besoin d'ajouter ceci à la zone d'inclusion de votre fichier:

@import MediaPlayer; 
Questions connexes