From 1314b05014f3f52dd4cc32440af15ab70fbd28fb Mon Sep 17 00:00:00 2001 From: Rupesh Tatiya <rtatiya@codeaurora.org> Date: Thu, 25 Feb 2016 13:09:30 +0530 Subject: [PATCH] Reset FM audio settings on off. When FM is either turned off or factory reset is done or headset is pulled out, unmute the audio and restore audio path to system default. CRs-Fixed: 981687 Change-Id: Ibb9f18e49fdcd9f07cea4006748bab48bd87216c --- fmapp2/src/com/caf/fmradio/FMRadio.java | 6 ------ fmapp2/src/com/caf/fmradio/FMRadioService.java | 8 +++++++- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/fmapp2/src/com/caf/fmradio/FMRadio.java b/fmapp2/src/com/caf/fmradio/FMRadio.java index 9c44add..909a14c 100644 --- a/fmapp2/src/com/caf/fmradio/FMRadio.java +++ b/fmapp2/src/com/caf/fmradio/FMRadio.java @@ -1679,7 +1679,6 @@ public class FMRadio extends Activity private void disableRadio() { boolean bStatus = false; - boolean bSpeakerPhoneOn = isSpeakerEnabled(); cancelSearch(); endSleepTimer(); @@ -1698,11 +1697,6 @@ public class FMRadio extends Activity } enableRadioOnOffUI(); - // restore default wired headset on FM power off - if (bSpeakerPhoneOn) { - mService.enableSpeaker(false); - mSpeakerButton.setImageResource(R.drawable.btn_earphone); - } }catch (RemoteException e) { e.printStackTrace(); } diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java index 0231997..83018f5 100644 --- a/fmapp2/src/com/caf/fmradio/FMRadioService.java +++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java @@ -2137,6 +2137,7 @@ public class FMRadioService extends Service * Turn OFF FM Operations: This disables all the current FM operations . */ private void fmOperationsOff() { + // stop recording if (isFmRecordingOn()) { stopRecording(); @@ -2147,14 +2148,19 @@ public class FMRadioService extends Service return; } } + // disable audio path AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); if(audioManager != null) { Log.d(LOGTAG, "audioManager.setFmRadioOn = false \n" ); stopFM(); - //audioManager.setParameters("FMRadioOn=false"); Log.d(LOGTAG, "audioManager.setFmRadioOn false done \n" ); } + // reset FM audio settings + if (isSpeakerEnabled() == true) + enableSpeaker(false); + if (isMuted() == true) + unMute(); if (isAnalogModeEnabled()) { SystemProperties.set("hw.fm.isAnalog","false"); -- GitLab