我有一个在后台服务中运行的媒体播放器实例。在我的主要活动中,我有一个表面视图。
当活动启动并创建表面视图时,我绑定到服务并将媒体播放器的显示表面设置为我的主要活动的表面视图。我这样做mPlayer.setSurface(sv.getHolder().getSurface());
视频已显示,到目前为止一切正常。当我的surfaceview被销毁时,在surfaceDestroyed()
回调中我尝试通过调用将surfaceview与媒体播放器分离mPlayer.setSurface(null);
。问题是,当我这样做时,我从媒体播放器收到错误(错误代码 1)。
所以我的问题是,在我设置了 MediaPlayer 对象并设置了 Surfaceview 之后,mPlayer.setSurface(sv.getHolder().getSurface());
有没有办法在不停止或重新初始化 mediaplayer 对象的情况下释放或分离该surfaceview?
提前致谢。