下载文件并在ios中使用videoplayer播放
希望使用xcode实现以下逻辑:下载文件并在ios中使用videoplayer播放,ios,iphone,objective-c,ipad,mpmovieplayer,Ios,Iphone,Objective C,Ipad,Mpmovieplayer,希望使用xcode实现以下逻辑: 1) 下载一个文件===对我来说是正常的,并且正在作为异步操作执行。 2) 之后,我想用电影播放器运行它: 3) 我尝试的示例代码如下所示。它不会等待下载完成。有人能建议一种替代方法来执行这些操作或修改此代码吗?我不想使用计时器等待 DowloadFilesManager * mydw =[[DowloadFilesManager alloc] init]; [mydw downloadURL:@"http://localhost/videos/video3x.
1) 下载一个文件===对我来说是正常的,并且正在作为异步操作执行。
2) 之后,我想用电影播放器运行它:
3) 我尝试的示例代码如下所示。它不会等待下载完成。有人能建议一种替代方法来执行这些操作或修改此代码吗?我不想使用计时器等待
DowloadFilesManager * mydw =[[DowloadFilesManager alloc] init];
[mydw downloadURL:@"http://localhost/videos/video3x.mov" destPath:anObj.uRL];
while([mydw downLoadStatus])
{
NSLog(@"Downloading finished);
[videoPlayer1 setContentURL:[NSURL URLWithString:@"/Users/varunisac/Library/Application Support/iPhone Simulator/6.1/Applications/851B4382-AF7E-4653-B28F-8F0707AC5D45/Documents/SalesAppFolder/video3x.mov"]];
[videoPlayer1 prepareToPlay];
[videoPlayer1 play];
}
你如何下载你的文件?您正在使用
NSURLDownload
?您必须在某处实现nsurldowloaddelegate
(可能在一个视图控制器中),并等待调用方法downloaddiffinish:
。在该方法中,您可以运行上面的代码开始播放。使用dispatch\u sync方法下载视频文件
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
DowloadFilesManager * mydw =[[DowloadFilesManager alloc] init];
[mydw downloadURL:@"http://localhost/videos/video3x.mov" destPath:anObj.uRL];
});
while([mydw downLoadStatus])
{
NSLog(@"Downloading finished);
[videoPlayer1 setContentURL:[NSURL URLWithString:@"/Users/varunisac/Library/Application Support/iPhone Simulator/6.1/Applications/851B4382-AF7E-4653-B28F-8F0707AC5D45/Documents/SalesAppFolder/video3x.mov"]];
[videoPlayer1 prepareToPlay];
[videoPlayer1 play];
}
只要试着直接播放你的流到MPMoviePlayer谢谢你的快速回复,但我想播放存储的脱机文件。!!你可以通过下载电影来做到这一点。。我将在回答中发布代码..Xcode是一个IDE,而不是电影播放器。这个问题似乎与IDE的使用无关。请参见我发布的答案@瓦鲁尼亚克