2013-08-23 2 views
0

Я подключил USB-гарнитуру к своему устройству Android. Мне нужно переключить звук между ручным и встроенным микрофоном. В некоторых устройствах (например, mk802 hdmi-tv-console) threre - это системное меню, в котором могут быть изменены звуковые входы и выходы.Как выбрать звуковое устройство в android

Я искал способ изменения ввода и вывода из консоли или из кода.

ответ

0

Я не знаю какого-либо официального способа делать то, что вы хотите. Обоснование выглядит примерно так: если вы не хотите использовать громкую связь, вы бы не включили ее в первую очередь.

Есть несколько вещей, которые вы могли бы попробовать, но они не гарантированы для работы со всеми устройствами и версиями Android.
Для воспроизведения вы можете попробовать это, чтобы получить звук, который поступает на громкоговоритель вместо USB аксессуара:

Class audioSystemClass = Class.forName("android.media.AudioSystem"); 
Method setForceUse = audioSystemClass.getMethod("setForceUse", int.class, int.class); 
// First 1 == FOR_MEDIA, second 1 == FORCE_SPEAKER. To go back to the default 
// behavior, use FORCE_NONE (0). 
setForceUse.invoke(null, 1, 1); 

И для записи вы можете попробовать с помощью VOICE_CALL или CAMCORDERAudioSource вместо MIC или DEFAULT.