From 85e0df10a86c89d11de8c6dc6fca0cadbd0c6bf0 Mon Sep 17 00:00:00 2001 From: codeworkx Date: Fri, 8 Jun 2012 22:46:27 +0200 Subject: telephony: support for setting add. audioparams for incall audio Change-Id: Ic6f72fba542e1421631826d9bcd86340064c942b --- core/res/res/values/config.xml | 5 +++++ .../java/com/android/internal/telephony/CallManager.java | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml index c5f453d..caa1be1 100755 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml @@ -658,6 +658,11 @@ false + + + + + false diff --git a/telephony/java/com/android/internal/telephony/CallManager.java b/telephony/java/com/android/internal/telephony/CallManager.java index 3dd57ee..52c04aa 100644 --- a/telephony/java/com/android/internal/telephony/CallManager.java +++ b/telephony/java/com/android/internal/telephony/CallManager.java @@ -395,6 +395,19 @@ public final class CallManager { } break; } + + // Set additional audio parameters needed for incall audio + String[] audioParams = context.getResources().getStringArray(com.android.internal.R.array.config_telephony_set_audioparameters); + for (String parameter : audioParams) { + if (mode == AudioManager.MODE_IN_CALL) { + Log.d(LOG_TAG, "setAudioMode(): " + parameter + "=on"); + audioManager.setParameters(parameter + "=on"); + } else if (mode == AudioManager.MODE_NORMAL) { + Log.d(LOG_TAG, "setAudioMode(): " + parameter + "=off"); + audioManager.setParameters(parameter + "=off"); + } + } + // calling audioManager.setMode() multiple times in a short period of // time seems to break the audio recorder in in-call mode if (audioManager.getMode() != mode) audioManager.setMode(mode); -- cgit v1.1