Мне нужно воспроизвести звук через динамик. Я использую AudioTrack для воспроизведения звука на устройстве. и аудиорежим установлен как STREAM_VOICE_CALL. Также в моей деятельности громкая связь отключается:
AudioManager am;
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setSpeakerphoneOn(false);
Кажется, это отлично работает на устройствах 2.3. Но на 2.1 звук все равно воспроизводится из динамика.
В качестве исправления я попытался использовать setMode() как:
am.setMode(AudioManager.MODE_IN_CALL);
При этом звук через динамик воспроизводился на 2.1 и 2.3, но чаще всего не воспроизводился вообще на 2.3. Кроме того, я читал в некоторых местах, что setMode() не должен использоваться приложениями, поскольку он влияет на общесистемное состояние телефона. здесь: http://code.google.com/p/sipdroid/issues/detail?id=270
Любая помощь?