AVAudioPlayer en pantalla de bloqueo
He implementado un reproductor de audio usandoAVAudioPlayer
(noAVPlayer
). Soy capaz de manejar los eventos de control remoto con el siguiente método. Funciona bastante bien hasta ahora, sin embargo veo dos mássubtypes
para estos eventos:UIEventSubtypeRemoteControlEndSeekingForward
yUIEventSubtypeRemoteControlEndSeekingBackward
.
- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
//if it is a remote control event handle it correctly
if (event.type == UIEventTypeRemoteControl)
{
if (event.subtype == UIEventSubtypeRemoteControlPlay)
{
[self playAudio];
}
else if (event.subtype == UIEventSubtypeRemoteControlPause)
{
[self pauseAudio];
}
else if (event.subtype == UIEventSubtypeRemoteControlTogglePlayPause)
{
[self togglePlayPause];
}
else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingBackward)
{
[self rewindTheAudio]; //this method rewinds the audio by 15 seconds.
}
else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingForward)
{
[self fastForwardTheAudio]; //this method fast-forwards the audio by 15 seconds.
}
}
Así que las preguntas:
Para que las cosas funcionen bien, ¿se supone que debo implementar esos dos subtipos también?
Este método solo permite larewind
, play/pause
yfast forward
botones en la pantalla de bloqueo, pero no muestra el título del archivo, la ilustración y la duración. ¿Cómo puedo mostrar esa información usandoAVAudioPlayer
oAVAudioSession
(¿Realmente no quiero una biblioteca / API más para implementar esto)?
2-a. yo descubríMPNowPlayingInfoCenter
Mientras busco y no sé mucho al respecto. ¿Tengo que usarlo para implementar esas cosas arriba? : -