iOS开发 - 二维码的扫描

一、前言

最近在做一个关于扫描二维码签到的小东西,所以还是上来写一篇关于二维码的文章,网上也有一些扫描二维码的框架,例如ZXing或者ZBar。但是感觉还不如用原生的好,所以果断采用原生的了。本文介绍的二维码的扫描,就是显示二维码扫描的结果,至于链接的跳转和应用的打开,就不多说明,只要在plist文件和扫描的代理方法里面做处理就好了。
ps:

  • 二维码的扫描要调用相机,模拟器是不支持相机的,所以用模拟器测试的话,是会崩溃。
  • 原生的二维码扫描不支持图像识别,只支持摄像头扫描识别。

二、相关类的介绍

  1. AVCaptureDevice:代表抽象的硬件设备。
  2. AVCaptureDeviceInput:输入设备
  3. AVCaptureMetadataOutput:输出类,扫描的码的类型均由这个类管理。
  4. AVCaptureSession:会话对象,连接输入设备和输出设备。
  5. AVCaptureVideoPreviewLayer:图层类,将相机扫描到的图像实时显示在屏幕上。

三、扫描的界面的搭建

  • 界面效果预览

Snip20160807_2.png
  • 在屏幕中央,拖了一个view,作为扫描的区域框,并设置好它的约束。