【问题标题】:Media player not resume correctly in android媒体播放器无法在 android 中正确恢复
【发布时间】:2015-07-24 07:35:06
【问题描述】:

我在我的 android 应用程序中使用了SurfaceView,并通过媒体播放器在此SurfaceView 上播放视频。

在我的活动中,我成功播放、暂停和恢复视频文件。

当我在我的VideoActivity 中暂停视频然后在其上打开一个新活动然后返回到我的VideoActivity 并恢复视频时,如果恢复的视频没有显示并且屏幕是黑色。

为什么? 我该如何解决这个问题?

我的暂停和恢复方法:

public void pausePlayback() {

        if (mediaPlayer != null && mediaPlayer.isPlaying())
        {
            mediaPlayer.pause();
        }
    }

public void resumePlayback() {

        if (mediaPlayer != null && !mediaPlayer.isPlaying())
        {
            surfaceView1.requestFocus();
            mediaPlayer.start();
        }
    }

【问题讨论】:

    标签: android video media-player surfaceview


    【解决方案1】:

    这通常是无法将 MediaPlayer 连接到新 Surface 的结果。当您切换活动时,SurfaceView 及其关联的 Surface 将被拆除,因此当您返回时,您需要使用 MediaPlayer#setSurface() 连接到新的 Surface。

    【讨论】:

    • 谢谢!有效!但重要的是要知道你应该在surfaceView1.post(...) 中调用它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多