2016-04-20 7 views
0

URLからビデオをダウンロードしてギャラリーに保存する方法がわかりません。 https://api.quickblox.com/blobs/4185382/download保存された写真をアルバムに保存することはできません:エラードメイン= NSURLErrorDomainコード= -1100「要求されたURLは、このサーバ上で見つかりませんでした」のダウンロード動画示すエラーがiOS:URLから動画をダウンロードしてギャラリーに保存します......?

BOOL compatible = UIVideoAtPathIsCompatibleWithSavedPhotosAlbum([videoURL path]); 
     // save 
     NSLog(@"BOOL compatible....%hhd",compatible); 

     if (compatible){ 
      UISaveVideoAtPathToSavedPhotosAlbum([videoURL path], nil, nil, nil); 
      NSLog(@"SAVED!!!! %@",[videoURL path]); 
     }else 
     { 
      NSLog(@"INCOMPATIBLE..."); 
     } 

UserInfo = 0x7f9c13ccb130 {NSUnderlyingError = 0x7f9c13cc3aa0「操作が完了しないことができませんでした。そのようなファイルやディレクトリを」、

+0

ヨール動画のURLが正しくありません。 – KlimczakM

+0

どのビデオURLが間違っているのかわかりません。 –

+0

@KlimczakM _how_はビデオURLが間違っている - 間違っていると言っても、問題を解決するのには役立ちません! – deanWombourne

答えて

0

このcode.Iを使用しますが、それが正常に動作ことを願っています。:

-(void)DownloadVideo 
{ 
//download the file in a seperate thread. 
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
NSLog(@"Downloading Started"); 
NSString *urlToDownload = @"http://www.somewhere.com/thefile.mp4"; 
NSURL *url = [NSURL URLWithString:urlToDownload]; 
NSData *urlData = [NSData dataWithContentsOfURL:url]; 
if (urlData) 
    { 
    NSArray  *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    NSString *filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"thefile.mp4"]; 

    //saving is done on main thread 
    dispatch_async(dispatch_get_main_queue(), ^{ 
     [urlData writeToFile:filePath atomically:YES]; 
     NSLog(@"File Saved !"); 
    }); 
    } 

}); 
} 
+0

ありがとうたくさんのおい...魔法のように動作します.... –

+0

ようこそ..すべて最高です.. –

0

Apple's documentationから私はUIVideoAtPathIsCompatibleWithSavedPhotosAlbumがローカルファイルだけでなく、リモートのものに動作することを考えます。 UISaveVideoAtPathToSavedPhotosAlbumについても同様です。

UIVideoAtPathIsCompatibleWithSavedPhotosAlbumを使用するには、まずデバイスにファイルをダウンロードする必要があります。私はそれを行うにはAFNetworkingのようなものを使用することをお勧めします。

関連する問題