就在刚刚,没错就是刚才,由于程序最初取消了相机的访问权限,然后当扫描二维码的时候,访问相机直接crash。摸不着头脑,然后就去百度上百度crash原因。然后百度到了解决方法,特别笔记一下。
因为我是崩溃到了这句
_output.metadataObjectTypes=@[AVMetadataObjectTypeQRCode];
所以在AVCaptureMetadataOutput设置metadataObjectTypes的前边加了个判断,问题就这样解决了。
NSString*mediaType =AVMediaTypeVideo;
AVAuthorizationStatusauthStatus = [AVCaptureDeviceauthorizationStatusForMediaType:mediaType];
if(authStatus ==AVAuthorizationStatusRestricted|| authStatus ==AVAuthorizationStatusDenied){
UIAlertView*alert =[[UIAlertViewalloc]initWithTitle:@"提示"message:@"请在iPhone的“设置”-“隐私”-“相机”功能中,找到“某某应用”打开相机访问权限"delegate:selfcancelButtonTitle:@"确定"otherButtonTitles:nil];
[alert show];
return;
}