iOS:我如何防止临时文件可见性

时间:2013-03-21 03:58:06

标签: iphone ios ipad ios5 ios6

我正在开发一款可以从静止图像生成临时视频的应用。但我不希望用户查看我生成的临时文件。但是当应用程序生成视频文件时,视频将通过相机胶卷列出。

我的问题是如何生成无法访问“相机胶卷,iTunes和iCloud ”的临时媒体文件?

请帮帮我。提前谢谢。

代码:

[assetWriter finishWritingWithCompletionHandler:^
     { 
         NSURL *url = _outMovieURL; ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
         [library writeVideoAtPathToSavedPhotosAlbum:url 
                                     completionBlock:^(NSURL *assetURL, NSError *error) 
                                     { 
                                         NSLog(@"Done!"); 
                                     }]; 
     }];

2 个答案:

答案 0 :(得分:1)

这个区块:

 [assetWriter finishWritingWithCompletionHandler:^
 { 
     NSURL *url = _outMovieURL; ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
     [library writeVideoAtPathToSavedPhotosAlbum:url 
                                 completionBlock:^(NSURL *assetURL, NSError *error) 
                                 { 
                                     NSLog(@"Done!"); 
                                 }]; 
 }];

是在相机胶卷中写入文件。因此,在仅创建临时视频时不要使用此功能。将该临时视频文件写在documentDirectory中,(或者可能已经在documentDirectory中,当您创建它时,您需要做的就是不使用此代码在相机胶卷中写入该文件)。

答案 1 :(得分:0)

你应该使用NSTemporaryDirectory()并在最后附加你自己的词缀以获取任何临时文件。该目录中的文件将由操作系统清除,或者您可以在完成后立即删除。