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
或照片框架