Merge "Audio doesn't resume after video recording"
diff --git a/fmapp2/AndroidManifest.xml b/fmapp2/AndroidManifest.xml
index bc383fe..482a85e 100644
--- a/fmapp2/AndroidManifest.xml
+++ b/fmapp2/AndroidManifest.xml
@@ -57,6 +57,7 @@
android:clearTaskOnLaunch="true"
android:allowTaskReparenting="true"
android:launchMode="singleTask"
+ android:configChanges="keyboardHidden|orientation|screenSize"
android:excludeFromRecents="false" >
<intent-filter>
diff --git a/fmapp2/src/com/caf/fmradio/FMRadio.java b/fmapp2/src/com/caf/fmradio/FMRadio.java
index 6561aec..fb5ca1a 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadio.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadio.java
@@ -41,6 +41,7 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.content.BroadcastReceiver;
+import android.content.res.Configuration;
import android.media.AudioSystem;
import android.media.AudioManager;
import android.media.MediaRecorder;
@@ -429,6 +430,12 @@
}
@Override
+ public void onConfigurationChanged(Configuration newConfig) {
+ Log.d(LOGTAG, "onConfigurationChanged");
+ super.onConfigurationChanged(newConfig);
+ }
+
+ @Override
public void onRestart() {
Log.d(LOGTAG, "FMRadio: onRestart");
try {
diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java
index c5b4cbf..29ded29 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadioService.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java
@@ -2218,6 +2218,9 @@
{
Log.d(LOGTAG, "audioManager.setFmRadioOn = false \n" );
stopFM();
+ unMute();
+ audioManager.abandonAudioFocus(mAudioFocusListener);
+ //audioManager.setParameters("FMRadioOn=false");
Log.d(LOGTAG, "audioManager.setFmRadioOn false done \n" );
}
// reset FM audio settings
@@ -2269,14 +2272,13 @@
private boolean fmOff() {
boolean bStatus=false;
- fmOperationsOff();
-
// This will disable the FM radio device
if (mReceiver != null)
{
bStatus = mReceiver.disable();
mReceiver = null;
}
+ fmOperationsOff();
stop();
return(bStatus);
}
@@ -2286,11 +2288,6 @@
if (off_from == FM_OFF_FROM_APPLICATION || off_from == FM_OFF_FROM_ANTENNA) {
Log.d(LOGTAG, "FM application close button pressed or antenna removed");
mSession.setActive(false);
- AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
- if (audioManager != null)
- audioManager.abandonAudioFocus(mAudioFocusListener);
- else
- Log.d(LOGTAG, "Failed to get Audio Service");
}
return fmOff();
}