二维码扫描之AVCaptureMetadataOutput setMetadataObjectTypes: unspported type found
来源:互联网 发布:淘宝通栏是什么 编辑:程序博客网 时间:2024/06/04 23:27
前几天做了个二维码扫描功能,因为app支持IOS7以上版本,所以选择了IOS的原生二维码扫描AVFoundation。上线后部分玩家反映点击就崩溃,找到同样的iphone,同样的IOS版本没有任何崩溃的现象,疯了!
后来有个同事居然也反映奔溃,拿来debug半天都没找出问题,只知道设置output.metadataObjectTypes=@[AVMetadataObjectTypeQRCode]的时候崩溃了,后来发现output.availableMetadataObjectTypes为空,却不知为何为空。google了一遍,大家都说要先设置session的output,可我是已经设置了的,所以排除这种可能性。后来磨叽了很久查了很久google,百度都没结果。到下午的时候突然灵光一闪想着这不是相机么,该不会是关了权限吧,打开设置一看,居然真是把权限关了,然后打开权限,再扫描就ok了,没有再闪退。
后来在扫描之前加了判断相机的访问权限,贴上代码:
NSString *mediaType =AVMediaTypeVideo;
AVAuthorizationStatus authStatus = [AVCaptureDeviceauthorizationStatusForMediaType:mediaType];
if(authStatus ==AVAuthorizationStatusRestricted || authStatus ==AVAuthorizationStatusDenied){
UIAlertView *alert =[[UIAlertViewalloc]initWithTitle:@“XXXX”message:@"请在iPhone的“设置”-“隐私”-“相机”功能中,找到“XXXX”打开相机访问权限"delegate:nilcancelButtonTitle:@"确定"otherButtonTitles: nil];
[alert show];
return;
}
- 二维码扫描之AVCaptureMetadataOutput setMetadataObjectTypes: unspported type found
- iOS 原生二维码扫描crush([AVCaptureMetadataOutput setMetadataObjectTypes:] - unsupported type found. Use -)
- [问题] [AVCaptureMetadataOutput setMetadataObjectTypes:] - unsupported type found.
- iOS-87-解决相机扫码报错*** -[AVCaptureMetadataOutput setMetadataObjectTypes:] Unsupported type found
- iOS开发基础之设置状态栏和二维码的unspported type found 问题
- 二维码使用之二维码扫描
- 二维码扫描之Demo
- Qt之二维码扫描
- iOS之二维码扫描
- Qt之二维码扫描
- iOS开发之 二维码生成/二维码扫描
- Android之条码扫描二维码扫描
- Android之条码扫描二维码扫描
- 二维码扫描之动画效果
- Android开发之二维码扫描
- iOS开发之二维码扫描
- React Native之二维码扫描
- iOS 之原生扫描二维码
- 史上超强图像处理开源工具包--ImageMagick
- JVM加载类实例分析
- POJ1151Atlantis矩形面积并,线段树离散化
- Hbase的HMaster启动失败
- js获取节点
- 二维码扫描之AVCaptureMetadataOutput setMetadataObjectTypes: unspported type found
- android的消息与线程
- Android EditText 并排对齐
- model中的data()函数
- java 解压zip包
- WebView缓存
- 封装属于自己的JS组件
- JAVA 对象引用,以及对象赋值
- Leetcode 19. Remove Nth Node From End of List