From 096d97ac3e01d3a148f6148180c375f9337b64e5 Mon Sep 17 00:00:00 2001 From: Wei Jia Date: Tue, 13 Mar 2018 08:47:59 -0700 Subject: [PATCH] MediaPlayer2Impl: fix several functions Test: MediaPlayer2 plays Bug: 74204684 Change-Id: I0e4fbd2915f2a726a6016c13f47e7d1433593c74 --- media/java/android/media/MediaPlayer2Impl.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/media/java/android/media/MediaPlayer2Impl.java b/media/java/android/media/MediaPlayer2Impl.java index 1c4d898acb4f0..030e50d67df95 100644 --- a/media/java/android/media/MediaPlayer2Impl.java +++ b/media/java/android/media/MediaPlayer2Impl.java @@ -82,7 +82,6 @@ import java.util.Vector; import java.util.concurrent.Executor; import java.util.concurrent.atomic.AtomicInteger; - /** * @hide */ @@ -118,6 +117,7 @@ public final class MediaPlayer2Impl extends MediaPlayer2 { private AtomicInteger mBufferedPercentageCurrent; private AtomicInteger mBufferedPercentageNext; + private volatile float mVolume = 1.0f; // Modular DRM private final Object mDrmLock = new Object(); @@ -553,6 +553,7 @@ public final class MediaPlayer2Impl extends MediaPlayer2 { addTask(new Task(CALL_COMPLETED_SET_PLAYER_VOLUME, false) { @Override void process() { + mVolume = volume; _setVolume(volume, volume); } }); @@ -567,8 +568,7 @@ public final class MediaPlayer2Impl extends MediaPlayer2 { */ @Override public float getPlayerVolume() { - // TODO: get real volume - return 1.0f; + return mVolume; } /** @@ -3227,9 +3227,7 @@ public final class MediaPlayer2Impl extends MediaPlayer2 { @Override public void clearMediaPlayer2EventCallback() { synchronized (mEventCbLock) { - for (Pair cb : mEventCallbackRecords) { - mEventCallbackRecords.remove(cb); - } + mEventCallbackRecords.clear(); } } @@ -3300,9 +3298,7 @@ public final class MediaPlayer2Impl extends MediaPlayer2 { @Override public void clearDrmEventCallback() { synchronized (mDrmEventCbLock) { - for (Pair cb : mDrmEventCallbackRecords) { - mDrmEventCallbackRecords.remove(cb); - } + mDrmEventCallbackRecords.clear(); } }