Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
下载文件并在ios中使用videoplayer播放_Ios_Iphone_Objective C_Ipad_Mpmovieplayer - Fatal编程技术网

下载文件并在ios中使用videoplayer播放

下载文件并在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.

希望使用xcode实现以下逻辑:
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的使用无关。请参见我发布的答案@瓦鲁尼亚克