Resolve setVolume hidden API usage
Resolves the use of the MediaPlayer#setVolume hidden API with the
public API instead as part of mainline cleanup.
Bug: 307816808
Flag: com.android.server.telecom.flags.resolve_hidden_dependencies_two
Test: m Telecom
Change-Id: Ib39fc2bccc74b22baba9969e4c61a629a1b27c6f
diff --git a/src/com/android/server/telecom/CallRecordingTonePlayer.java b/src/com/android/server/telecom/CallRecordingTonePlayer.java
index 1b522bc..aa33d3b 100644
--- a/src/com/android/server/telecom/CallRecordingTonePlayer.java
+++ b/src/com/android/server/telecom/CallRecordingTonePlayer.java
@@ -29,6 +29,7 @@
import android.telecom.Log;
import com.android.internal.annotations.VisibleForTesting;
+import com.android.server.telecom.flags.FeatureFlags;
import java.util.ArrayList;
import java.util.Collections;
@@ -91,7 +92,11 @@
if (telephonyDevice != null) {
mRecordingTonePlayer = MediaPlayer.create(mContext, R.raw.record);
mRecordingTonePlayer.setPreferredDevice(telephonyDevice);
- mRecordingTonePlayer.setVolume(0.1f);
+ if (mFeatureFlags.resolveHiddenDependenciesTwo()) {
+ mRecordingTonePlayer.setVolume(0.1f, 0.1f);
+ } else {
+ mRecordingTonePlayer.setVolume(0.1f);
+ }
AudioAttributes audioAttributes = new AudioAttributes.Builder()
.setUsage(AudioAttributes.USAGE_VOICE_COMMUNICATION).build();
mRecordingTonePlayer.setAudioAttributes(audioAttributes);
@@ -117,16 +122,18 @@
private final long mRepeatInterval;
private boolean mIsRecording = false;
private LoopingTonePlayer mLoopingTonePlayer;
+ private FeatureFlags mFeatureFlags;
private List<Call> mCalls = new ArrayList<>();
public CallRecordingTonePlayer(Context context, AudioManager audioManager,
Timeouts.Adapter timeouts,
- TelecomSystem.SyncRoot lock) {
+ TelecomSystem.SyncRoot lock, FeatureFlags featureFlags) {
mContext = context;
mAudioManager = audioManager;
mLock = lock;
mRepeatInterval = timeouts.getCallRecordingToneRepeatIntervalMillis(
context.getContentResolver());
+ mFeatureFlags = featureFlags;
}
@Override
diff --git a/src/com/android/server/telecom/CallsManager.java b/src/com/android/server/telecom/CallsManager.java
index 8b9b3d8..d518ecc 100644
--- a/src/com/android/server/telecom/CallsManager.java
+++ b/src/com/android/server/telecom/CallsManager.java
@@ -758,7 +758,7 @@
mCallRecordingTonePlayer = null;
} else {
mCallRecordingTonePlayer = new CallRecordingTonePlayer(mContext, audioManager,
- mTimeoutsAdapter, mLock);
+ mTimeoutsAdapter, mLock, featureFlags);
}
mCallAudioManager = new CallAudioManager(mCallAudioRouteAdapter,
this, callAudioModeStateMachineFactory.create(systemStateHelper,
diff --git a/tests/src/com/android/server/telecom/tests/CallRecordingTonePlayerTest.java b/tests/src/com/android/server/telecom/tests/CallRecordingTonePlayerTest.java
index 5ccb2fe..2bdb589 100644
--- a/tests/src/com/android/server/telecom/tests/CallRecordingTonePlayerTest.java
+++ b/tests/src/com/android/server/telecom/tests/CallRecordingTonePlayerTest.java
@@ -102,7 +102,7 @@
.thenReturn(500L);
mCallRecordingTonePlayer = new CallRecordingTonePlayer(
mComponentContextFixture.getTestDouble().getApplicationContext(),
- mAudioManager, mTimeouts, mSyncRoot);
+ mAudioManager, mTimeouts, mSyncRoot, mFeatureFlags);
when(mAudioManager.getActiveRecordingConfigurations()).thenReturn(null);
}