2011-02-01 14 views
5

¿Por qué AVAudioPlayer continúa reproduciéndose después de que la aplicación proviene del modo de fondo, incluso si el reproductor se detuvo antes de que la aplicación se fuera al fondo?¿Por qué AVAudioPlayer continúa reproduciéndose automáticamente después de que la aplicación proviene del modo de fondo?

En general, me pregunto por qué AVAudioPlayer continúa reproduciéndose automáticamente después de que la aplicación proviene de fondo (porque cuando la aplicación va a segundo plano no puedo detectar como beginInterruption como otros delegados de AVAudioPlayer y AVAudioSession). ps: perdón por mi inglés :)

Respuesta

0

cuando presiona la aplicación en segundo plano, la aplicación queda inactiva, es decir, ya no está activa. Esta es la razón por la que no puede atrapar beginInterruption. Cuando la aplicación aparece en primer plano, la aplicación se vuelve a activar, por eso AVAudioPlayer comienza a reproducirse nuevamente. Espero que esto ayude

0

Paso unas horas tratando de descubrir exactamente lo mismo.

Cada vez que mi aplicación entraba en modo de fondo, el audio se detenía automáticamente después de una UIApplicationDidEnterBackgroundNotification y continuaba reproduciéndose antes de obtener una UIApplicationWillEnterForegroundNoticiation. Incluso cuando lo detuve cuando recibí la notificación de fondo.

enter image description here

Cuando He activado el audio UIBackgroundMode, yo era capaz de hacer una pausa en mi AudioQueue (o si utiliza AVAudioPlayer que) yo mismo cuando entró en la aplicación de fondo. Esto resultó en que mi IU mostrara que el reproductor de audio estaba en pausa y me permitió tener control total sobre la reproducción de audio entre los estados de la aplicación.

Cuestiones relacionadas