之前都是第三方的二维码,操作简单pod集成,美滋滋。随着公司项目越来越恶心到大,还是自己撸一个比较实在。
demo的主要功能扫描二维码和生成二维码。
扫描相关类
二维码扫描需要获取摄像头并读取照片信息,因此我们需要导入系统的AVFoundation框架,创建视频会话。我们需要用到一下几个类:
- AVCaptureSession 会话对象。此类作为硬件设备输入输出信息的桥梁,承担实时获取设备数据的责任
- AVCaptureDeviceInput 设备输入类。这个类用来表示输入数据的硬件设备,配置抽象设备的port
- AVCaptureMetadataOutput 输出类。这个支持二维码、条形码等图像数据的识别
-
AVCaptureVideoPreviewLayer 图层类。用来快速呈现摄像头获取的原始数据
二维码扫描功能的实现步骤是创建好会话对象,用来获取从硬件设备输入的数据,并实时显示在界面上。在扫描到相应图像数据的时候,通过AVCaptureVideoPreviewLayer类型进行返回
扫描二维码
1.首先倒入框架
#import <AVFoundation/AVFoundation.h>2.遵守协议
<AVCaptureMetadataOutputObjectsDelegate,UIImagePickerControllerDelegate,UINavigationControllerDelegate>3.主要用到的属性设置










