Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(192)

Unified Diff: media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java

Issue 2437963002: AudioManagerAndroid: remove audio focus request and saved audio mode (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java
diff --git a/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java b/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java
index 626beec9594dc34cae96000c7df0366d3230cbf1..2b4935c84ed598f55ac9b30827b7d58189e192ef 100644
--- a/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java
+++ b/media/base/android/java/src/org/chromium/media/AudioManagerAndroid.java
@@ -40,7 +40,7 @@ import java.util.List;
import java.util.Map;
@JNINamespace("media")
-class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
+class AudioManagerAndroid {
private static final String TAG = "cr.media";
// Set to true to enable debug logs. Avoid in production builds.
@@ -169,8 +169,6 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
// Enabled during initialization if BLUETOOTH permission is granted.
private boolean mHasBluetoothPermission = false;
- private int mSavedAudioMode = AudioManager.MODE_INVALID;
-
// Stores the audio states related to Bluetooth SCO audio, where some
// states are needed to keep track of intermediate states while the SCO
// channel is enabled or disabled (switching state can take a few seconds).
@@ -296,8 +294,8 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
}
/**
- * Requests audio focus for voice call and sets audio mode as COMMUNICATION if input parameter
- * is true. Abandon audio focus and restore saved audio mode if input parameter is false.
+ * Sets audio mode as COMMUNICATION if input parameter is true.
+ * Restores audio mode to NORMAL if input parameter is false.
* Required permission: android.Manifest.permission.MODIFY_AUDIO_SETTINGS.
*/
@CalledByNative
@@ -315,10 +313,6 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
}
if (on) {
- // Request audio focus for a voice call of unknown duration.
- mAudioManager.requestAudioFocus(this, AudioManager.STREAM_VOICE_CALL,
- AudioManager.AUDIOFOCUS_GAIN);
-
// Store microphone mute state and speakerphone state so it can
// be restored when closing.
mSavedIsSpeakerphoneOn = mAudioManager.isSpeakerphoneOn();
@@ -331,8 +325,6 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
// mode but we want to be able to mute it completely.
startObservingVolumeChanges();
} else {
- mAudioManager.abandonAudioFocus(this);
-
stopObservingVolumeChanges();
stopBluetoothSco();
synchronized (mLock) {
@@ -349,27 +341,12 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
/**
* Sets audio mode to MODE_IN_COMMUNICATION if input parameter is true.
- * Restores saved audio mode if input parameter is false.
+ * Restores audio mode to MODE_NORMAL if input parameter is false.
*/
private void setCommunicationAudioModeOnInternal(boolean on) {
if (DEBUG) logd("setCommunicationAudioModeOn(" + on + ")");
if (on) {
- if (mSavedAudioMode != AudioManager.MODE_INVALID) {
- Log.w(TAG, "Audio mode has already been set");
- return;
- }
-
- // Store the current audio mode the first time we try to
- // switch to communication mode.
- try {
- mSavedAudioMode = mAudioManager.getMode();
- } catch (SecurityException e) {
- logDeviceInfo();
- throw e;
-
- }
-
try {
mAudioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
} catch (SecurityException e) {
@@ -378,39 +355,14 @@ class AudioManagerAndroid implements AudioManager.OnAudioFocusChangeListener{
}
} else {
- if (mSavedAudioMode == AudioManager.MODE_INVALID) {
- Log.w(TAG, "Audio mode has not yet been set");
- return;
- }
-
// Restore the mode that was used before we switched to
// communication mode.
try {
- mAudioManager.setMode(mSavedAudioMode);
+ mAudioManager.setMode(AudioManager.MODE_NORMAL);
} catch (SecurityException e) {
logDeviceInfo();
throw e;
}
- mSavedAudioMode = AudioManager.MODE_INVALID;
- }
- }
-
- /**
- * Restores saved audio mode when we lose audio focus.
- * Sets communication audio mode when we gain audio focus again.
- * See https://crbug.com/525597 for more details.
- */
- @Override
- public void onAudioFocusChange(int focusChange) {
- if (DEBUG) logd("onAudioFocusChange: " + focusChange);
-
- switch (focusChange) {
- case AudioManager.AUDIOFOCUS_GAIN:
- setCommunicationAudioModeOnInternal(true);
- break;
- default:
- setCommunicationAudioModeOnInternal(false);
- break;
}
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698