复制步骤: 1.调用playMovieAtURL。使用此网址:(http://nov8rixstorage.blob.core.windows.net/searchpad/tutorial_portrait.mov) 2.让电影开始然后按完成。 3.使用相同的URL再次调用playMovieAtURL。
结果:MPMoviePlayerViewController动画;闪过几次;并在通知对象中关闭并显示错误。 (“服务器配置不正确。”)
这很奇怪。使事情变得陌生;在从设备(模拟器或iphone)删除应用程序之前,电影播放器不会再播放任何内容。重新部署后,它将再次完美地播放电影;但是在第二场比赛中,它会重复上述行为。
我做错了什么?任何人都可以重现这个吗?
- (void) playMovieAtURL: (NSURL*) theURL {
[theURL retain];
MPMoviePlayerViewController *mp = [[MPMoviePlayerViewController alloc] initWithContentURL:theURL];
if (mp)
{
[self presentMoviePlayerViewControllerAnimated:mp];
[[NSNotificationCenter defaultCenter] addObserver:self
selector: @selector(playbackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:mp.moviePlayer];
[mp release];
}
[theURL release];
}
-(void) playbackDidFinish:(NSNotification*)aNotification
{
MPMoviePlayerController *player = [aNotification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:player];
[player stop];
[self dismissMoviePlayerViewControllerAnimated];
}
编辑:任何人都可以复制这个吗?任何人吗?
答案 0 :(得分:0)
尝试moviePlayer.repeatMode = MPMovieRepeatModeOne;
答案 1 :(得分:0)
我认为不是:
MPMoviePlayerController *player = [aNotification object];
你应该写:
MPMoviePlayerViewController *player = [aNotification object];