diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2017-08-31 02:50:04 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2017-08-31 02:50:04 +0000 |
| commit | 52700a9795f9845dc9b3d506c19b5a8194a62ab0 (patch) | |
| tree | cf9334dd366d1d9bdff911007b2b3cd92a1ee477 | |
| parent | 089923612995ab289d49c023d01bc18c17527403 (diff) | |
| parent | e8b4c97bdfbd54c014efa1ba2d89cf696a285330 (diff) | |
Merge "At STARTED_AS_NEXT, offload MediaPlayer.start() to a separate thread" into oc-mr1-dev
| -rw-r--r-- | media/java/android/media/MediaPlayer.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java index 5a16c36545c8..0d99473c69b9 100644 --- a/media/java/android/media/MediaPlayer.java +++ b/media/java/android/media/MediaPlayer.java @@ -3408,7 +3408,7 @@ public class MediaPlayer extends PlayerBase private static void postEventFromNative(Object mediaplayer_ref, int what, int arg1, int arg2, Object obj) { - MediaPlayer mp = (MediaPlayer)((WeakReference)mediaplayer_ref).get(); + final MediaPlayer mp = (MediaPlayer)((WeakReference)mediaplayer_ref).get(); if (mp == null) { return; } @@ -3416,8 +3416,14 @@ public class MediaPlayer extends PlayerBase switch (what) { case MEDIA_INFO: if (arg1 == MEDIA_INFO_STARTED_AS_NEXT) { - // this acquires the wakelock if needed, and sets the client side state - mp.start(); + new Thread(new Runnable() { + @Override + public void run() { + // this acquires the wakelock if needed, and sets the client side state + mp.start(); + } + }).start(); + Thread.yield(); } break; |
