一、引言
1、软件项目概述
基于项目中扫码的需求。
2、博客概述
二维码扫描功能的实现讲解。
二、软件设计描述
1、总体设计
如图1所示,二维码扫描实现总体结构如下,主要是对摄像头管理和和摄像头返回数据的解析。
图2:总体类图
2)、类功能描述
QRCodeManager:主要对相机模块和解析模块的管理。
IQRCodeResultCallback:主要用于扫描结果数据的返回,由QRCodeManager返回到Activity。
CameraManager:主要对摄像头的管理,包括打开摄像头,开始预览和停止预览等操作。
ViewFinderConfig:主要包含Camera预览框和Screen预览框的位置,用于绘制扫描框(界面上的扫描效果)。
ICameraDataCallback:主要用于解析数据的返回,由相机模块返回到QRCodeManager,供解析模块解析。
PreviewCallback:主要用于相机数据的返回,由Camera返回到CameraManager。
Camera:Android系统内部的摄像机类。
CameraConfig:主要对相机进行参数的配置,包括聚焦模式,预览大小等参数。
SourceData:主要用来存储解析二维码数据用到的一些数据。
QRCodeDecoder:主要负责解析相机获得的数据。
3)、初始化时序图
注:
1、 cameraDataCallbackImpl:是在QRCodeManager实现接口CameraDataCallback的内部类对象,用于接收CameraManager返回的图像数据。
2、 resultCallbackImpl:是在QRCodeActivity中实现接口ResultCallback的内部类对象,用于接收QRCodeManager解析出来的结果。
图4:扫描时序图
5)、数据返回时序图

图5:数据返回时序图
代码资源
址: http://download.csdn.net/download/chendeshan330/10035938
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!