在iPhone上捕获视频,试图将其移动到另一个目录

在iPhone上捕获视频,试图将其移动到另一个目录,iphone,ios4,Iphone,Ios4,我使用UIImagePickerController拍摄了一段视频。当我调用[picker stopVideoCapture]时,将调用以下委托方法: - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { NSURL *url = [info objectForKey:UIImagePickerControl

我使用UIImagePickerController拍摄了一段视频。当我调用
[picker stopVideoCapture]
时,将调用以下委托方法:

- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info
{

    NSURL *url = [info objectForKey:UIImagePickerControllerMediaURL];

    NSError *error = nil;

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *path = [paths objectAtIndex:0];

    NSFileManager *fileManager = [[NSFileManager alloc] init];

    NSLog(@"attempting to copy: %@ to: %@", [url absoluteString], [NSString stringWithFormat:@"%@/rawMovie.MOV",path]);


if ([fileManager moveItemAtPath:[url absoluteString] toPath:[NSString stringWithFormat:@"%@/rawMovie.MOV",path] error:&error] != YES)
    NSLog(@"Can't move file with error: %@", [error localizedDescription]);

}
但是,当调用此方法时,它返回一个错误读数:

The operation couldn’t be completed. (Cocoa error 4.)
据我所知,这意味着由于某种未知原因无法复制该文件。有谁能给我一个更好的答案,为什么会抛出这个错误?或者,更好的是,有人能告诉我将捕获的视频直接保存到应用程序的文档目录的最佳方法吗

谢谢,
James

为什么不设置断点&查看
*path
url
的输出。您是否有足够的磁盘空间在设备上存储视频?

我认为您需要使用默认的文件管理器:

NSFileManager* fileManager = [NSFileManager defaultManager];
您还可以记录错误的用户信息以获取(希望)更多详细信息

NSLog(@"Can't move file with error: %@", [error userInfo]);

毕竟,我只是使用了AVFoundation而不是UIImagePickerController。这样我就可以直接保存到documents目录。