2011-01-19 2 views
4

Мне нужно найти, включен ли громкоговоритель, или программирование.Как найти, включен ли громкоговоритель или нет в андроиде

Я знаю, что мы можем найти метод ниже, независимо от того, включен он или нет.

AudioManager.isSpeakerphoneOn(); 

В моем случае даже он возвращает false, даже если динамик включен каким-то образом.

Мне нужно знать ниже 2 вещи.

1. Есть ли какое-либо вещательное действие, чтобы найти состояние динамиков.

2.Is там какой-нибудь способ найти динамик телефона изменение состояния

+0

Как вы получаете вас AudioManager. Надеюсь, вы получаете от своего контекста приложения. (AudioManager) context.getSystemService (Context.AUDIO_SERVICE); Если да, то это должно сработать. (его системный сервис, и вас не просят вмешиваться в него, если ваше приложение не обрабатывает телефонию et a) –

+0

Да, на самом деле это случай, когда голосовое соединение подключено. Я начинаю свое приложение. в этом случае динамик включается. есть ли какая-то вещь, связанная с телефонией. может у пожалуйста, предложите – user388269

+0

я думаю, вы должны использовать приемник вещания, как показано здесь: [Ringer изменения режима слушателя Broadcast приемник] [1] [1]: http://stackoverflow.com/questions/7483961/вызывной режим с изменением слушатель-вещательный приемник –

ответ

0

Попробуйте для диктора по функциональности.

AudioManager audioManager = (AudioManager) Home.this.getSystemService(Context.AUDIO_SERVICE); 
audioManager.setSpeakerphoneOn(true); 
audioManager.setMode(AudioManager.MODE_IN_CALL); 
0

Проверьте нижеследующую ссылку. Может быть полезно.

Turn on speakerphone whenever an outgoing call is made

Но связь не использует широковещательный приемник. Он проверяет, включена ли функция динамика в тот момент.

0

Здесь Go

AudioManager audioManager = (AudioManager) MainActivity.this .getSystemService(Context.AUDIO_SERVICE); 
    audioManager.setMode(AudioManager.MODE_IN_CALL); 

    if(audioManager.isSpeakerphoneOn()){ 
     audioManager.setSpeakerphoneOn(true); 


    }else if(!audioManager.isSpeakerphoneOn()){ 


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