媒体播放器集显示非法状态异常

时间:2014-09-22 13:50:56

标签: android media-player android-mediaplayer

我有两个媒体播放器,我想在它们之间循环播放,所以播放播放器1然后交换到播放器2然后播放播放器1等。但是当我尝试设置第二个播放器的显示时,我得到一个非法状态异常。我查看了媒体播放器的参考页面,以检查无法调用的状态setDisplay(),但它表示可以在媒体播放器处于任何状态时调用它。有关为什么会发生这种情况的任何建议吗?这只发生在第二次调用第二个媒体播放器时,从mediaplayer2到具有相同实现的mediaplayer1没有问题。

记录猫

09-22 14:16:09.314 E/AndroidRuntime( 8162): FATAL EXCEPTION: main
09-22 14:16:09.314 E/AndroidRuntime( 8162): java.lang.IllegalStateException
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.media.MediaPlayer._setVideoSurface(Native Method)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.media.MediaPlayer.setDisplay(MediaPlayer.java:668)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at my.package.MainActivity.onCompletion(MainActivity.java:275)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.media.MediaPlayer$EventHandler.handleMessage(MediaPlayer.java:2013)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.os.Looper.loop(Looper.java:137)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at android.app.ActivityThread.main(ActivityThread.java:4745)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at java.lang.reflect.Method.invokeNative(Native Method)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at java.lang.reflect.Method.invoke(Method.java:511)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
09-22 14:16:09.314 E/AndroidRuntime( 8162):     at dalvik.system.NativeStart.main(Native Method)

0 个答案:

没有答案