iOS将电影从相机保存到核心数据

时间:2013-07-18 12:07:21

标签: ios core-data camera

在我的应用程序中,我想保存刚刚拍摄到核心数据的电影。我不希望这些电影最终出现在普通相机胶卷中。我的想法是获取剪辑并将其加载到对象“电影”中,然后我可以保存到cor数据。就像地址簿中的照片一样。核心数据让我们保存到外部记录文件中,无论是什么。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    movie = [info objectForKey:UIImagePickerControllerOriginalImage];

但是当我去保存电影时,电影显示为零。

  NSManagedObjectContext *context = [self managedObjectContext];
    NSManagedObject *newMedia = [NSEntityDescription insertNewObjectForEntityForName:@"Media" inManagedObjectContext:context];
    [newMedia setValue:@"Video Clip " forKey:@"title"];
    [newMedia setValue:now forKey:@"date_time"];
    [newMedia setValue:movie forKey:@"movie"];

我希望有人能指出我正确的方向。 感谢

1 个答案:

答案 0 :(得分:2)

您可以像这样获取视频:

NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
NSData *videoData = [NSData dataWithContentsOfURL:videoURL];

并在videoData数据库中保存movie,只要其类型为NSData

您的代码:

movie = [info objectForKey:UIImagePickerControllerOriginalImage];
拍完照片后,

应该从UIImage获得imagePickerController,如果你说你正在录制,那就是为什么movie = nil;