2010-05-26 26 views
8

¿Hay alguna forma en Android de forzar la salida a través del altavoz del teléfono, incluso si un auricular está enchufado en el conector? Sé que tiene que haber una manera porque cuando estás hablando por teléfono, puedes poner a alguien en el altavoz, incluso si hay auriculares enchufados en el conector.Forzar salida de sonido a través del altavoz en Android

Respuesta

3

Puede cambiar esto en todo el sistema utilizando el método AudioManager.setSpeakerphoneOn.

No creo que se puede establecer esto para una determinada instancia MediaPlayer/AudioTrack/SoundPool, pero dependiendo de su caso de uso, que podría en realidad se busca establecer el tipo de flujo de audio usando MediaPlayer.setAudioStreamType o un equivalente de otra clases de reproducción de audio.

+0

@Icemanind han intentado de esta manera? En la mayoría de los casos, no desobedecerá la configuración del usuario, como reproducir el sonido a través de auriculares. Pero si su caso de uso es válido, parece que funcionaría. – Janusz

+1

Sí. Lo que estaba tratando de hacer era crear un programa de reloj despertador para mi propio uso para mi propio teléfono Android. A veces, sin embargo, accidentalmente me olvido de desconectar mis auriculares y la alarma se disparará a través de los auriculares y no los escucharé. Es por eso que me preguntaba cómo hacer esto. – Icemanind

0

La salida de sonido a través del altavoz

AudioManager m_amAudioManager = 
     AudioManager)getSystemService(Context.AUDIO_SERVICE); 

m_amAudioManager.setMode(AudioManager.MODE_NORMAL); 
m_amAudioManager.setSpeakerphoneOn(true); 
+1

no funciona para HTC M9 y dispositivos nexus :(, ¿alguna solución alternativa? –

Cuestiones relacionadas