切换到视频捕获模式后,iPhone XR(iOS 12.4.1)真实设备上的 UIImagePickerController 发生崩溃。在 UIImagePickerController 的第二次演示中重现崩溃。崩溃不会在 iPhone 6(iOS 12.4.1) 真实设备上重现。使用 Xcode 10.3 构建的 Info.plist 测试应用程序中设置了相机和麦克风使用说明键
脚步:
- 呈现 UIImagePickerController
- 关闭 UIImagePickerController
- 呈现 UIImagePickerController
- 点击视频按钮 - > 崩溃
如果我设置,崩溃不会重现videoQuality = UIImagePickerControllerQualityTypeHigh
。但我需要UIImagePickerControllerQualityTypeMedium
。
@interface ViewController () < UINavigationControllerDelegate, UIImagePickerControllerDelegate>
@end
@implementation ViewController
#pragma mark - IBActions
- (IBAction)showPicker:(UIButton *)sender {
UIImagePickerController *pickerController = [UIImagePickerController new];
pickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
pickerController.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
// pickerController.videoQuality = UIImagePickerControllerQualityTypeHigh;
pickerController.delegate = self;
[self presentViewController:pickerController animated:YES completion:NULL];
}
#pragma mark - UIImagePickerControllerDelegate
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<UIImagePickerControllerInfoKey, id> *)info {
[self dismissViewControllerAnimated:YES completion:NULL];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
[self dismissViewControllerAnimated:YES completion:NULL];
}
@end
'NSInvalidArgumentException', reason: '*** -[AVCaptureDevice setActiveColorSpace:] Not supported - use activeFormat.supportedColorSpaces'