【发布时间】:2010-07-27 08:18:19
【问题描述】:
我已经编写了在 iPhone OS 3.1.3 中播放视频的代码,并且视频播放正常。
但是当我尝试使用相同的代码播放视频时,视频在 iOS 4 中无法播放。
我知道媒体播放器框架已针对 iOS 4 进行了更改。有什么方法可以在不同的操作系统上播放视频而无需准备单独的二进制文件??
【问题讨论】:
标签: ios ios4 media-player
我已经编写了在 iPhone OS 3.1.3 中播放视频的代码,并且视频播放正常。
但是当我尝试使用相同的代码播放视频时,视频在 iOS 4 中无法播放。
我知道媒体播放器框架已针对 iOS 4 进行了更改。有什么方法可以在不同的操作系统上播放视频而无需准备单独的二进制文件??
【问题讨论】:
标签: ios ios4 media-player
首先检查您是否在 OS 3.2 或更高版本上。如果是,请以新方式创建电影播放器:
if (NSClassFromString(@"UISplitViewController") != nil) {
MPMoviePlayerViewController *mp = [[MPMoviePlayerViewController alloc] initWithContentURL:yourURL];
[[mp moviePlayer] prepareToPlay];
[[mp moviePlayer] setShouldAutoplay:YES];
[[mp moviePlayer] setControlStyle:2];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoPlayBackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:nil];
[self presentMoviePlayerViewControllerAnimated:mp];
} else {
moviePlayer=[[MPMoviePlayerController alloc] initWithContentURL:yourURL];
[self playMovieTheOldWay:moviePlayer];
}
您可以像这样关闭新的电影播放器:
-(void)videoPlayBackDidFinish:(NSNotification*)notification
{
[self dismissMoviePlayerViewControllerAnimated];
}
【讨论】: