2011-12-15 15 views
7

En los últimos iOS versiones aplicaciones tienen algún tipo de acceso a los botones de control multimedia en la pantalla de bloqueo, al igual que el botón Reproducir/Pausa:¿Cómo hago que mi aplicación funcione con los botones de control multimedia en la pantalla de bloqueo?

enter image description here

Parece que se supone que los botones para trabajar con el MPMusicPlayerController clase, ¿es así? ¿Hay alguna manera de obtener los eventos "en bruto" de los botones? Porque el reproductor de música solo parece ofrecer una API para suministrar un grupo de MPMediaItem s. ¿Qué sucede si mi aplicación es, por ejemplo, una radio que necesita manejar los botones de manera diferente?

Respuesta

8

Después de un poco más de búsqueda encontré este related question que aclara las cosas. La clase de controlador de reproductor de música no es realmente la pista correcta, el truco es suscribirse para eventos remotos en su controlador:

- (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 
} 
Cuestiones relacionadas