volumen teclas solo silencio pone los las funcionan descompuso desactivar como cambiar botones boton anular ios iphone mpmovieplayercontroller avaudiosession

ios - teclas - Cómo hacer que MPMoviePlayerController ignore el interruptor de silencio



no funcionan los botones del iphone (5)

Después de importar AVFoundation, simplemente ponga esto en su delegado:

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil];

Quiero reproducir un video usando MPMoviePlayerController pero quiero que ignore el interruptor de silencio, similar al comportamiento del reproductor de video de Youtube.

¿Algunas ideas?


Para cualquier persona en el futuro, sé que esto ya ha sido respondido, pero tuve un problema con la reproducción de un video en mi aplicación que causó que las aplicaciones como spotify, youtube, etc. dejaran de reproducir su audio, así que termino usando esto:

NSError *silentSwitcherror = nil; BOOL silentSwitchSuccess = [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:&silentSwitcherror]; if (silentSwitchSuccess) { //put whatever video code you are trying to play } else { //put how to handle failed instances. }


Use la categoría AVAudioSessionCategoryPlayback y su aplicación ignorará el interruptor de silencio como la aplicación de Youtube.

Por ejemplo (inspirado por Ken Pletzer en los comentarios):

#import <AVFoundation/AVFoundation.h> // note: you also need to add AVfoundation.framework to your project''s // list of linked frameworks NSError *error = nil; BOOL success = [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error]; if (!success) { // Handle error here, as appropriate }


en Swift: haga esto una vez antes de reproducir sonido / video (por ejemplo, al principio de su aplicación)

do{ try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) } catch { //Didn''t work }


_player.useApplicationAudioSession = NO;