1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| - (void)imageControllerCapure{ if (![UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]){ [SWProgressHUB showWithInfoStatus:@"没法找到摄像头"]; return; } NSArray *availableMediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera]; if (![availableMediaTypes containsObject:(NSString *)kUTTypeMovie]){ [SWProgressHUB showWithInfoStatus:@"无法录制视频"]; return; } UIImagePickerController *videoImage = [[UIImagePickerController alloc]init]; videoImage.sourceType = UIImagePickerControllerSourceTypeCamera; videoImage.mediaTypes = @[(NSString *)kUTTypeMovie]; videoImage.videoQuality = UIImagePickerControllerQualityTypeHigh; videoImage.delegate = self; videoImage.cameraDevice = UIImagePickerControllerCameraDeviceRear; [self presentViewController:videoImage animated:YES completion:nil]; } #pragma mark - 代理 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{ WELog(@"infoData = %@",info);
NSData *data = [NSData dataWithContentsOfURL:info[UIImagePickerControllerMediaURL]]; WELog(@"videoData = %@",data); ALAssetsLibrary *al = [[ALAssetsLibrary alloc]init]; [al writeVideoAtPathToSavedPhotosAlbum:info[UIImagePickerControllerMediaURL] completionBlock:^(NSURL *assetURL, NSError *error) { WELog(@"assetURL = %@",assetURL); [self dismissViewControllerAnimated:YES completion:nil]; }]; }
|