媒体播放器无法在 android 中正确恢复

Media player not resume correctly in android

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

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

当我在我的 VideoActivity 中暂停视频然后打开一个新的 activity 然后回到我的 VideoActivity 继续播放视频时,如果恢复视频但无显示且黑屏

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

我的暂停和恢复方法:

public void pausePlayback() {

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

public void resumePlayback() {

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

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

连接到新的 Surface