描述:按照标准流程,将添加扫码支持类型放在添加输出设备方法后面
但依旧会报错:
[AVCaptureMetadataOutput setMetadataObjectTypes:] - unsupported type found. Use -availableMetadataObjectTypes.’
解决办法:1.在’***’行后面任意地方打上断点,crush后看_input是否为nil
2.如果_input=nil;如下面红体代码,查看输出
3.如果输出“***未授权**”,那么手动去’设置’,打开该应用的相机授权。即可。
原因:有的设备不会弹出“是否授权该应用访问相机权限”,引导用户打开该应用访问相机权限,那么导致_input为nil,从而导致crush。
代码如下:
_device = [AVCaptureDevicedefaultDeviceWithMediaType:AVMediaTypeVideo];//设备
*** _input = [AVCaptureDeviceInputdeviceInputWithDevice:_deviceerror:&error];//输入
if (error) {//检测输入是否有错误