我们有一个应用程序,我们使用MPMoviePlayerController从第三方流式传输内容。有时他们会将流列为可用,即使它尚未设置。问题是,当我们尝试播放这样的流时,我们会得到错误:
“AVPlayerItem不能与多个AVPlayer实例相关联”
如果我们播放各种类似Apple的样本流,那么效果很好: http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
是否有正确的方法来处理来自MPMoviePlayerController的错误?
Stackoverflow上有关于同一问题的各种其他帖子,但各种解决方案只是删除错误的流。在我们的情况下,这是不可能的,我们需要在客户端处理这个......如果可能的话?
答案 0 :(得分:0)
我设法通过在完成事件时处理MPMoviePlayerController解决了这个问题。然后它不再崩溃所以我希望这是这样做的正确方法......
notification = MPMoviePlayerController.Notifications
.ObservePlaybackDidFinish((sender, args) => {
mp.Dispose();
mp = null;
if(notification != null)
{
notification.Dispose();
notification = null;
}
});