2010-05-26 2 views
8

Есть ли способ в Android заставить выход через громкоговоритель телефона, даже если наушники подключены к гнезду? Я знаю, что должен быть способ, потому что, когда вы разговариваете по телефону, вы можете поместить кого-то на громкоговоритель, даже если в гнездо подключены наушники.Принудительный выход звука через динамик в Android

ответ

3

Вы можете изменить этот общесистемный с помощью метода AudioManager.setSpeakerphoneOn.

Я не верю, что вы можете установить для конкретного экземпляра MediaPlayer/AudioTrack/SoundPool, но в зависимости от вашего случая использования, вы может на самом деле смотреть, чтобы установить тип звукового потока с помощью MediaPlayer.setAudioStreamType или эквивалент для других звуковые классы воспроизведения.

+0

@Icemanind вы пробовали это так? В большинстве случаев вы не будете нарушать пользовательские настройки, такие как воспроизведение звука через наушники. Но если ваш usecase действителен, это звучит так, как будто это сработает. – Janusz

+1

Да. То, что я пытался сделать, это создать программу будильника для моего собственного использования для моего собственного телефона Android. Иногда, хотя я случайно забыл отключить наушники, и будильник погаснет через наушники, и я их не услышу. Вот почему мне было интересно, как это сделать. – Icemanind

0

вывода звука через динамик

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

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

не работает для устройств HTC M9 и nexus :(, любые альтернативные решения? –

Смежные вопросы