2015-06-10 4 views
1

Я пытаюсь отключить свой микрофон в моей Android приложенияНевозможно установить отключение микрофона - Android

audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
audioManager.setMicrophoneMute(true); 

Я также добавил разрешение в проявленном

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 

Однако, когда я говорю к моему приложению, журналы возвращают мне именно то, что я сказал, что означает, что микрофон не отключен.

Даже журналы говорят мне, что микрофон должен быть отключен. Это:

Log.d("Muted ? : ", String.valueOf(audioManager.isMicrophoneMute())); 

Показать этот журнал:

Muted ? : true 

Я действительно не знаю, что может быть проблема. У вас есть идеи по этому поводу?

+0

Это мне не ясно: 'audioManager.isMicrophoneMute() == true', но это на самом деле не приглушить? – omainegra

+0

Точно. Несмотря на то, что он говорит, что он немой, я могу поговорить с моим приложением, и он получает то, что я говорю. –

+0

Вы решаете проблему? У меня есть те же проблемы, которые нуждаются в вашей помощи. – Jame

ответ

1

Я попробовал то же самое, я думал, что проблема была во всех устройствах, но некоторые устройства могут отключить их микрофон, я попробовал то же самое решение этого ответа:

setMicrophoneMute(boolean) doesn't work on some devices

я имитировать пресс на кнопке отключения звука в комплекте громкой связи. он работал на мне надежду на то, что это поможет вам тоже вот код:

Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON); 
buttonUp.putExtra(Intent.EXTRA_KEY_EVENT,new KeyEvent(KeyEvent.ACTION_UP,KeyEvent.KEYCODE_HEADSETHOOK)); 
getBaseContext().sendOrderedBroadcast(buttonUp,"android.permission.CALL_PRIVILEGED"); 
+0

Спасибо за ваш ответ. Я попытался скопировать этот код в мой метод onCreate(), но мое приложение все еще может использовать микрофон ... –