在OS 3.1采摘从PhotoLibrary视频用的UIImagePickerController(

2019-07-21 07:45发布

我试图挑选从照片库中的视频。 原则上,我知道该怎么做你设置图像拾取的mediaType的与kUTTypeMovie一个NSArray作为其唯一的目标。 但是,这似乎并没有在iPhone 3G的工作。 由于OS 3.1,你可以保存在你的照片库已经收到视频。 当您在“照片”应用程序启动构建的视频显示。 然而,这并不使用的UIImagePickerController工作。 控制器报告说,它仅支持图像。 当您尝试设置与kUTTypeMovie控制器,它实际上崩溃的mediaType的。

如果没有指定介质类型仅适用于图像显示在选择器。

至于有人设法挑选从照片库中的视频? 如果是的话也只在3GS上或3G以及工作吗?

问候

Ben

Answer 1:

我得到了imagepicker在3G和3GS一挑影片工作。

NSArray *mediaTypesAllowed = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
[imgPicker setMediaTypes:mediaTypesAllowed];

并获得拾取视频

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
    NSString *mediaType = [info valueForKey:UIImagePickerControllerMediaType];
    if([mediaType isEqualToString:@"public.movie"]){...}
}


Answer 2:

嘿,我也无法使用上述代码来获得在3G的电影对象。 它崩溃在我的3G手机。 但是它适用于我的3GS,但问题是它显示在照片库图像和电影的混合。 我尝试下面的代码:

videoPickerCtrl.sourceType =  UIImagePickerControllerSourceTypePhotoLibrary;

NSArray *mediaTypesAllowed = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];

和我的3GS运行OS 3.1.2,它让我保存在我的照片库中的视频图像暨。

而如果我尝试做以下操作:

videoPickerCtrl.sourceType =  UIImagePickerControllerSourceTypePhotoLibrary;
NSArray *mediaTypesAllowed = [NSArray arrayWithObject:@"public.movie"];
[videoPickerCtrl setMediaTypes:mediaTypesAllowed];

然后,所有它显示我是存储在相机胶卷中的视频,而不是其他。 谁能帮助?



文章来源: Picking video from PhotoLibrary with UIImagePickerController in OS 3.1