Merge "IMS: Abandon audio focus if no other call exist."
diff --git a/src/com/android/server/telecom/CallAudioManager.java b/src/com/android/server/telecom/CallAudioManager.java
index 2d3937d..ac6b01c 100644
--- a/src/com/android/server/telecom/CallAudioManager.java
+++ b/src/com/android/server/telecom/CallAudioManager.java
@@ -560,7 +560,10 @@
AudioManager.STREAM_VOICE_CALL, mMostRecentlyUsedMode);
} else if (!hasRingingForegroundCall() && mCallsManager.hasOnlyDisconnectedCalls()) {
Log.v(this, "updateAudioStreamAndMode : no ringing call");
- abandonAudioFocus();
+ // Request to set audio mode normal. Here confirm if any call exist.
+ if (!hasAnyCalls()) {
+ abandonAudioFocus();
+ }
} else {
// mIsRinging is false, but there is a foreground ringing call present. Don't
// abandon audio focus immediately to prevent audio focus from getting lost between
@@ -737,6 +740,10 @@
return UserHandle.USER_OWNER;
}
+ private boolean hasAnyCalls() {
+ return mCallsManager.hasAnyCalls();
+ }
+
/**
* Translates an {@link AudioManager} stream type to a human-readable string description.
*