我可以使用MPMoviePlayerViewController播放视频文件,一切正常。但是,如果我按下主页按钮,然后立即打开应用程序,视频将从超级视图中删除。我知道如何获得通知。你能告诉我如何恢复同样的视频吗?
NSString* filePath = [[NSBundle mainBundle] pathForResource:@"adv" ofType:@"mp4"];
NSURL* url = [NSURL fileURLWithPath:filePath];
_moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
[_moviePlayer.view setFrame:self.view.bounds];
[self.view addSubview:_moviePlayer.view];
我正在使用上面的代码播放视频。如果我按下主页按钮,然后返回应用程序,视频就会消失。我只能看到正在加载..
答案 0 :(得分:5)
当应用程序再次激活时,您应该可以通过调用[_moviePlayer play]
来重新开始播放。
您可以从AppDelegate的applicationDidBecomeActive
方法回拨,或执行以下操作:
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationDidBecomeActiveNotification object:[UIApplication sharedApplication] queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
[_moviePlayer play];
}];
为通知添加观察者(不要忘记稍后删除)。
答案 1 :(得分:0)
注册MPMoviePlayerPlaybackStateDidChangeNotification通知并检查_moviePlayer.moviePlayer属性上的endPlaybackTime值
然后在下次显示播放器时将initialPlaybackTime设置为上一个结束值