[问题] [AVCaptureMetadataOutput setMetadataObjectTypes:] - unsupported type found.
Bug 修复时,心情很好,然后找Bug 是一件 XXX 的事, 最近在 QR 扫描的界面在 Crashlytics 上老报错, 详情如下
很奇怪,因为自己的设备上跑的很正常啊,后来 PM 把相机的权限给关掉,问题复现了啊,激动啊
对权限没有判断啊,所以添加判断即可
- (void)checkAVAuthorizationStatus { AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo]; NSString *tips = NSLocalizedString(@"AVAuthorization", @"您没有权限访问相机"); if(status == AVAuthorizationStatusAuthorized) { // authorized [self setupCamera]; } else { [SVProgressHUD showWithStatus:tips]; } }
另外 AVCaptureMetadataOutput 还有一个坑,那就是 addOutput: 必须放在addOutput 之前
if ([_session canAddOutput:output]){
[_session addOutput:output];
}
// 条码类型 AVMetadataObjectTypeQRCode
output.metadataObjectTypes =@[AVMetadataObjectTypeQRCode];
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。