基于Android的二维码票据自动验证系统

 2022-01-17 11:01

论文总字数:23600字

目 录

1.引言 1

1.1 系统开发背景和意义 1

1.1.1 系统开发背景 1

1.1.2 系统开发的意义 1

1.1.3 二维码介绍 1

1.2 本文的组织结构 2

2.可行性研究和需求分析 4

2.1 可行性研究 4

2.2 需求分析 4

2.2.1 系统总体需求 5

2.2.2 系统技术需求 5

2.2.3 系统功能需求 5

3.开发环境和相关技术 6

3.1 开发工具介绍 6

3.1.1 Android基本开发工具简介 6

3.1.2 Tomcat简介 6

3.1.3 SQL Server简介 7

3.2 Android平台和相关技术 7

3.2.1 Android平台简介 7

3.2.2 Android平台搭建 7

4.系统总体设计 9

4.1 系统总体设计 9

4.2 系统概要设计 9

4.3 系统功能模块 9

4.4 数据库概要设计 10

4.4.1 数据库概念设计 10

4.4.2 数据库逻辑结构设计 11

4.4.3 数据库创建 12

第五章 系统详细设计 13

5.1 系统详细流程图 13

5.2 系统对数据库操作实现 13

5.2.1 服务器的搭建 13

5.2.2 服务器端web service连接数据库 14

5.2.3 Android端请求服务器和得到响应 14

5.3 注册登录功能 15

5.4 管理员生成票据信息功能 17

5.5 扫码验证功能 19

5.5.1 票据二维码扫描功能 19

5.5.2 二维码解码验证功能 20

5.5.3 生成票据记录功能 21

5.6 记录查询功能 21

5.7 密码修改功能 24

第六章 总结与展望 26

6.1工作总结和工作心得 26

6.1.1 工作总结 26

6.1.2 工作心得 26

6.2未来展望 27

参考文献 27

致 谢 28

1.引言

1.1 系统开发背景和意义

1.1.1 系统开发背景

在电子信息技术飞速发展的21世纪,移动设备得到广泛普及。用户数量的增长已不再是移动通信发展的焦点,取而代之的是移动通信的业务和新业务的发展。在愈发激烈的市场竞争中,人们对移动设备的功能要求也变得越来越高。

条形码技术是集条码理论、光电技术、计算机技术、通信技术等技术于一体的综合性技术。二维码技术是一种新型的条码技术,它的出现是对一维条形码的补充和完善。二维码不在只局限于单一方向的表达,承载容量更大,而且可以直接通过移动终端扫描。二位码凭借其更高可靠性、更强防伪保密性在信息自动化领域迅速普及和发展。目前国际ISO标准有多种条形码,QR code是矩阵式二维条形码的代表,目前它在移动设备中已得到广泛应用。

发票、收据等电子或物理凭证广泛地应用于社会生活的各个方面,其正常使用不仅关乎交易、记录等信誉凭证,还对社会经济具有重要的影响。为了辨别票据真伪,人们往往通过电话、网络等工具进行验证,进行人工比对。传统验证需要手工输入数据,不仅速度慢,而且容易出错。从而浪费了大量的时间精力,给生活带来了很大的不便。

以上技术的发展和一些现实问题催生了一个新的需求:即将二维码、真伪验证及移动设备相结合,开发基于一个集票据防伪验证和票据报销功能的Android系统,方便于人们的生产生活。

1.1.2 系统开发的意义

二维码作为一种全新的条码技术,已被广泛应用于各国的各个领域,包括国防、医疗保健、商业、金融、后勤管理等。QR code二维码在我国有着十分广阔的应用前景,因为它具有信息容量大,保密性能好,并且成本低的特点。

经过对工作中员工使用票据情况的调查,人们在生产生活中,对于交易凭证—票据有两个方面的操作需求。一是票据的真伪验证以保证交易可靠性,二是申请对票据的报销以及处理票据报销。但是传统的验证非常麻烦,票据的处理流程更是繁琐,浪费了很多时间。

因此本系统基于票据中广泛应用的二维码,通过对二维码的识别,获取二维码中票据信息,然后自动对其进行网络验证,从而辨别真伪。在验证的同时该系统还对用户进行了划分,普通用户可获得申请报销功能,而财务管理可对申请进行审核处理。使得日常生活中的票据验真伪及票据报销更加方便、可靠、快捷。

1.1.3 二维码介绍

二维码( 2-dimensional barcode ),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。DataMatrix, MaxiCode, Aztec, QR code, Vericode,PDF417,Ultracode,Code49,Code16K为最常用的码制。

二维码按照排列方式的不同又分为堆叠式/行排式二维条码和矩阵式二维码,其中QR code就是最流行的、最广泛应用的矩阵式二维码。

QR(Quick-Response) Code快速响应码,具有超高速、全方位、能够有效地表示汉字的识读特性。现在使用的QR code的规范一直遵循OMIA(Open Mobile Internet Alliance)的规范[10],QR code基本结构如图1.1所示。

图1.1 QR code基本结构

从图中可看出,QR code由功能图形和编码区格式两部分组成。编码区格式部分存放数据和数据格式信息,功能图形包括位置探测图形、位置探测图形分隔符、定位图形和校正图形。其中,位置探测图形、位置探测图形分隔符和定位图形用于对二维码的定位,对每个QR码来说,位置都是固定存在的,只是大小规格会有所差异。格式信息是指该二维码的纠错级别,分为L、M、Q、H。版本信息即二维码的规格,QR码符号共有40种规格的矩阵,从版本1为21x21,到版本40为177x177。数据和纠错码字实际保存用于修正二维码损坏带来的错误的二维码信息和纠错码字。

简要的解码过程:

( 1 ) 扫描识别二维码图像。

( 2 ) 将图像解析为01编码(黑色为1,白色为0)。

( 3 ) 根据编码规则,将编码解释为相应的内容。

1.2 本文的组织结构

本文在二维码技术(QR code)和Android手机平台的基础上,设计与实现了QR code的生成、识别和验证技术,进一步对此技术进行完善和补充,使其成为一个可实际运行的二维码票据生成、验证和报销的Android系统。

( 1 ) 引言。主要介绍该系统的开发背景、意义及目的,介绍了二维码的特点,重点介绍了QR code的基本结构和解码过程。

( 2 ) 可行性研究和需求分析。主要对系统进行技术、经济、操作和社会四个方面的可行性分析,以及对完成该系统进行软硬件及技术的需求分析。

( 3 ) 开发环境和相关技术。主要介绍完成该系统开发的几个重要开发工具,介绍该系统的开发环境,其中包括Android平台、服务器和数据库,详细介绍Android平台的搭建、服务器搭建以及服务器和数据库的连接操作。

( 4 ) 系统总体设计。介绍系统概要设计和对系统的功能模块进行划分,画出基于Android的二维码票据自动验证系统的总体功能模块图。

( 5 ) 系统详细设计。主要介绍了系统功能模块的详细设计和实现,在这里划分成对数据库的基本操作功能和扫码解码功能进行详细说明,其中包括了具体实现的重要步骤、关键代码以及功能实现测试截图。

( 6 ) 总结与展望。对本文的工作进行了总结,简述了自己在完成设计过程中的一些心得体会,并展望了二维码技术在移动设备的应用前景。

2.可行性研究和需求分析

2.1 可行性研究

一个项目在开发前需要进行各方面可行性的仔细分析,在保证它在目前条件下可行的情况下才能着手开发。在经济上或者是技术上是不可行的的项目,即使具有很好的背景和意义,也只能称之为不能实现的项目。参照现有实例,主要从以下四个方面对该系统进行可行性分析。

( 1 ) 技术可行性

基于Android的二维码票据自动验证系统,用户通过身份验证进入该系统,管理员可填写票据信息生成票据和相应的票据二维码。用户通过手机对所需验证的票据的QR code二维码进行扫描识别并且解码显示二维码隐藏的信息,并将票据的基本信息添加到相应的数据库。用户可根据自己的身份对票据记录进行相应的申请报销和处理报销(同意或拒绝)的操作。

首先完成该系统需要借助一个第三方的库函数code.jar.,管理员可以通过填写需要开出的发票信息生成票据相应的二维码,用户可以通过手机照相机获取二维码图片,然后将其进行解码,对比OMIA规范,将解码结果和数据库对比,即可实现,因此在技术上可行。

( 2 ) 经济可行

近几年,二维码技术发展迅速,凭借可靠性和低成本,已被广泛应用于各行各业,在资金方面不存在问题,所以该Android系统在经济上可行。

( 3 ) 操作可行性

通过对Android二维码生成、扫描识别和验证的研究,只需要有一台Android手机即可对QR code二维码进行扫描识别,对于票据的生成和报销操作通过服务器和数据库即可,所以得出结论该系统在操作方面可行。

( 4 ) 社会可行性

票据的真伪辨识成为人们生活的一个重要问题,该系统的开发主要利用二维码识别技术,对票据二维码内存储的信息进行传递和识别。并且该系统为企业提供了报销和处理报销的功能,方便了人们的生产生活。

根据以上几个方面的对系统的仔细研究分析,基于Android的二维码票据验证系统在技术、经济、操作、社会等方面都是可行的。

2.2 需求分析

需求分析是软件开发前期准备的最后一个步骤,它的基本任务是明确“系统需要做什么”。需求分析主要是对系统开发提出开发要求,开发要求必须完整、清晰、准确.

需求分析是以可行性研究为基础的,通过需求分析可以明确系统的总体功能,开发者再对总体功能进行具体分析,确定系统的功能模块。需求分析在整个系统开发中占据重要地位,因为它是系统开发的基础,直接关系到项目完成的成败和软件产品的质量。因此,必须用严格的验证和审查方法对系统进行需求分析。

2.2.1 系统总体需求

票据作为人们生产生活的交易凭证,保证其真实性、可靠性非常重要。在保证了票据真实可靠的基础上,人们通常会对票据具有报销操作的需求。所以该系统需要实现用户票据记录的查询和报销操作,提供给用户查询票据真伪的功能。

2.2.2 系统技术需求

实现该系统要重点考虑方法和技术等方面的问题,具体地说,在整个系统的开发过程中,能熟练掌握并运用JAVA语言,要熟悉QR code生成、识别和解码技术,以及服务器的搭建和数据库的基本操作,还要懂得软件工程和系统测试技术。由于此系统的开发是在Windows8环境下,借助Eclipse、JDK、ADT、SDK、tomcat以及SQL Server完成的,所以还必须了解和熟练使用这些开发工具。

2.2.3 系统功能需求

( 1 ) 数据库基本操作需求

该系统通过web service项目提供的接口,对数据库进行数据的增、删、改、查等基本功能,实现不同身份所需的不同操作需求。

( 2 ) 生成二维码和保存二维码需求

该系统管理员身份的用户可以填写开出票据的详细信息,根据票据信息生成二维码并保存二维码。保存的二维码用于制作票据。

( 3 ) 二维码扫描和解码需求

该系统需要对票据的二维码进行扫描识别,并对识别出的二维码按编码规则进行解码,所以在实现时需要调用系统的照相机功能,并对照相机进行控制,如识别成功后停止扫描等。

( 4 ) 调用浏览器功能

剩余内容已隐藏,请支付后下载全文,论文总字数:23600字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;