我正在使用MPMoviePlayerController在远程网址上播放视频的应用。当我重复使用播放器播放多个视频并且网址未指向视频时,控制器不会发回任何通知。我已经尝试过MPMoviePlayerPlaybackDidFinishNotification,MPMoviePlayerPlaybackStateDidChangeNotification和MPMoviePlayerLoadStateDidChangeNotification。他们都没有被发送。
我还试图做一个自定义超时功能,并调用播放器的停止功能,如下所示。但是,没有任何反应。 MPMoviePlayerController似乎已经死了,什么都不做。
[self performSelector:@selector(checkTimeout) withObject:theMovie afterDelay:15];
-(void) checkTimeout {
[self.moviePlayer stop];
}
有没有人知道如何使用MPMoviePlayerController处理无效的网址?
答案 0 :(得分:0)
我自己找到了一种解决方案。
似乎MPMoviePlayerController在播放多个网址时遇到问题。如果第二个网址未指向视频或无效,则播放器不会执行任何操作。所以,我最终为每个url创建了一个新的MPMoviePlayerController实例并监听MPMoviePlayerPlaybackDidFinishNotification。
答案 1 :(得分:0)
如果您没有收到有关无效网址的通知,那么您应该运行一个持续时间最长为(initialplaybacktime,0)的计时器,一旦您在此时间内未收到MPMoviePlayerReadyForDisplayDidChange notification,请生成错误视频无法播放。