如何从MPMoviePlayerController捕获异常:“AVPlayerItem不能与多个AVPlayer实例关联”

时间:2012-09-19 12:54:06

标签: xamarin.ios mpmovieplayercontroller

我们有一个应用程序,我们使用MPMoviePlayerController从第三方流式传输内容。有时他们会将流列为可用,即使它尚未设置。问题是,当我们尝试播放这样的流时,我们会得到错误:

“AVPlayerItem不能与多个AVPlayer实例相关联”

如果我们播放各种类似Apple的样本流,那么效果很好: http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8

是否有正确的方法来处理来自MPMoviePlayerController的错误?

Stackoverflow上有关于同一问题的各种其他帖子,但各种解决方案只是删除错误的流。在我们的情况下,这是不可能的,我们需要在客户端处理这个......如果可能的话?

1 个答案:

答案 0 :(得分:0)

我设法通过在完成事件时处理MPMoviePlayerController解决了这个问题。然后它不再崩溃所以我希望这是这样做的正确方法......

            notification = MPMoviePlayerController.Notifications
            .ObservePlaybackDidFinish((sender, args) => {
                mp.Dispose();
                mp = null;
                if(notification != null)
                {
                    notification.Dispose();
                    notification = null;
                }
        });