Ios UIImagePickerController-从照片库中拾取背景视频

Ios UIImagePickerController-从照片库中拾取背景视频,ios,objective-c,uiimagepickercontroller,Ios,Objective C,Uiimagepickercontroller,如何在后台模式下继续从照片库中拾取视频 我的意思是,当我按下imagePickerController-PhotoLibrary中的使用按钮时,视频开始压缩-在压缩过程中(附上屏幕截图),如果我按下主页按钮(即转到背景)然后来到前台,那么我得到了信息[UIImagePickerControllerMediaURL]为null,那么应用程序是否也可以在后台继续压缩视频,并在前台返回正确的url 截图: My用信息完成了PickingMediaWithInfo -(void)imagePicke

如何在后台模式下继续从照片库中拾取视频

我的意思是,当我按下
imagePickerController-PhotoLibrary中的
使用
按钮时,视频开始压缩-在压缩过程中(附上屏幕截图),如果我按下
主页按钮(即转到背景)
然后来到
前台
,那么我得到了
信息[UIImagePickerControllerMediaURL]
null
,那么应用程序是否也可以在后台继续压缩视频,并在前台返回正确的
url

截图:

My
用信息完成了PickingMediaWithInfo

 -(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{


NSURL *url = info[UIImagePickerControllerMediaURL];

NSLog(@"url : %@",url);

[picker dismissViewControllerAnimated:YES completion:nil];

}
-(void)imagePickerController:(UIImagePickerController*)选取器未使用信息完成PickingMediaWithInfo:(NSDictionary*)信息{
NSURL*url=info[UIImagePickerControllerMediaURL];
NSLog(@“url:%@”,url);
[picker DismissionViewControllerInitiated:是完成:无];
}
附言:如果我们用
摄像机录制视频,然后转到后台,它就会停止录制,我们可以在前台使用它

我想到了一个解决方法--
UIBackgroundTaskIdentifier
,但它不会在所有情况下都起作用,如果视频很大,那么它就有时间限制,所以正在寻找其他解决方案


如果我们想在
视频压缩过程中,通过
UIImagePickerController
photolibrary
连续在后台拾取
视频,并且用户按下home按钮(应用程序进入后台),我们将不胜感激!:)
然后我们必须使用
UIBackgroundTaskIdentifier
在后台继续执行,或者使用任何其他后台方式使应用程序在后台工作(不太可能!).现在,
UIBackgroundTaskIdentifier
有时间限制,所以我们不能选择任何大小的视频,所以如果我们限制视频的持续时间,那么我们可以在后台连续选择它,比如

UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.videoMaximumDuration = 60.0;

 self.backgroundTask = UIBackgroundTaskInvalid;

            self.backgroundTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
                NSLog(@"Background handler called. Not running background tasks anymore.");
                [[UIApplication sharedApplication] endBackgroundTask:self.backgroundTask];
                self.backgroundTask = UIBackgroundTaskInvalid;
            }];

[self presentViewController:picker animated:YES completion:NULL]; 
使用
UIImagePickerController
我们可以只在后台选择视频。如果有人想在后台选择大型视频,那么他/她应该查看
ALAssetLibrary
照片框架