基于二维条形码的新生报到系统客户端设计❋
2015-08-07康苏明张天刚张景安
康苏明,张天刚,张景安
(山西大同大学数学与计算机科学学院,大同037009)
·微机网络与通信·
基于二维条形码的新生报到系统客户端设计❋
康苏明,张天刚,张景安
(山西大同大学数学与计算机科学学院,大同037009)
通过对二维条形码的信息存储和识别设备及android开发系统平台的深入探索和实践,结合高等院校的实际需要,进行了高校对学生信息量的需求调查,并进行了专项分析,利用这些信息对新生报到系统进行了优化。采用二维条形码技术和移动客户端设计,用android移动客户端代替原有的PC客户端,通过扫描录取通知书上的二维条形码更加方便对新生入学报到的管理,包括新生的缴费问题、宿舍分配问题等工作。系统经试用运行稳定,响应时间较原有PC端有所缩短,有效缓解了新生报到时长时间排队等候、数据统计复杂等问题所带来的压力,提高了工作效率。
入学报到系统;二维条形码;移动客户端;android系统
1 引 言
2 二维条形码
入学报到是每个高校接待新生的必经流程[1],传统的入学报到需要大量的人力、物力,包括安排工作人员,接电,配备pc机等。报到整个过程耗时较长,工作效率低下。目前互联网技术已非常成熟,利用移动智能终端扫描新生录取通知书上的二维条形码,使学生信息的登记、统计及汇总分析工作得以简化,减少了劳动力和一些繁琐的录入工作,极大提高了新生入学的报到效率。
2.1 条形码技术
条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符,这就是我们常说的一维条形码。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。条形码可以标出物品的生产国、制造厂家、商品名称、生产日期、图书分类号、邮件起止地点、类别、日期等许多信息,因而在商品流通、图书管理、邮政管理、银行系统等许多领域都得到广泛的应用[2]。
近些年来,科技日益创新,更多的资讯都需要用条码符号来表示,然而一维条码所能表示的最大资料长度是15个字元,适合存放key,即关键索引值,不能进行产品描述,具有很大的局限性。除此之外,一维条码还有一个非常明显的缺点,即在它的垂直方向不能携带任何信息,因此资料密度值偏低。为了在固定面积上表示出尽可能多的信息,二维条形码应运而生[3]。它是按照某种特定的规律,用某种特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形记录数据符号信息的[4]。与一维条形码相比,二维条形码可以从横纵两个方向上同时表示资料信息,有效弥补了一维条形码的缺陷,如图1所示。
图1 二维条形码
2.2 二维条形码的分类及特点
目前最常使用的二维条形码可以分为矩阵式的二维形条码、堆叠式的二维条形码和邮政二维条形码[5],表1介绍了三种二维码的特点及典型代表。
表1 二维条形码的分类及特点
2.3 二维条形码的识读设备
二维条码的阅读设备按阅读原理的不同可分为:
(1)线性CCD和线性图像式阅读器(Linear Imager)
可阅读一维条码和线性堆叠式二维码(如PDF417),在阅读二维码时需要沿条码的垂直方向扫过整个条码,我们称为“扫动式阅读”。这类产品比较便宜。
(2)带光栅的激光阅读器
可阅读一维条码和线性堆叠式二维码。阅读二维码时将光线对准条码,由光栅元件完成垂直扫描,不需要手工扫动。
(3)图像式阅读器(Image Reader)
采用面阵CCD摄像方式将条码图像摄取后进行分析和解码,可阅读一维条码和所有类型的二维条码。
3 系统设计
入学报到系统整体是采用一台服务器与带有Andriod系统的智能移动终端相连,通过扫描二维码及对移动智能终端的操作实现数据传输,涉及到新生入学报到、宿舍安排、交费等全过程的信息传递。
3.1 移动智能终端
移动智能终端是指安装有开放式操作系统的终端,可装载相应的程序实现相应的功能,有高速接入能力和丰富的人机交互界面,以智能手机、平板电脑、电子阅读器等为代表。移动智能终端已经成为互联网业务的关键入口和主要创新平台,其操作系统平台的开放性、人机交互体验的独特性和携带的便捷性显著区别于个人电脑、功能移动智能终端等其他产品。智能终端的操作系统主要有谷歌开发的安卓系统,诺基亚的塞班系统,苹果的iOS及微软的windows phone,安卓系统具有强大的开放性、丰富的硬件支持功能和便利的开发条件,一度成为开放式操作系统的主流[9]。
3.2 功能设计
入学报到系统划分为四个子系统,分别为注册管理子系统,宿舍管理子系统,缴费管理子系统和服务器显示子系统。
3.2.1 注册管理子系统
注册为入学报到的第一步,主要查验新生的基本信息。
(1)用户管理
用户登录系统时,在系统中增加密码一项,用户只有输入正确的密码才能进入系统进行使用。
(2)信息管理
a.通过扫描录取通知书上的二维码,核实学生的基本信息。如无基本信息,显示“无该生信息”。同时通过系统添加移动智能终端号、父母亲基本情况、家庭住址、联系方式等信息,由学生本人核对后发送到服务器端。
b.根据学生的具体情况选择信息可选项,如上交档案、团关系、户口迁移证明、录取通知书等,选择完成后系统自动保存并发送到服务器端。
c.按所在院系、班级查询新生报到人数、宿舍入住情况、缴费情况,对查询结果可以进行显示、打印等操作。
3.2.2 宿舍管理子系统
宿舍管理子系统通过扫描学生的二维码确认学生是否报到注册,若学生的个人信息中没有显示报到注册信息则应提示“请先到报到处注册报到”的字样,若已经有注册信息,则界面将显示为“已报到”。在宿舍信息界面,显示学生应该入住的宿舍楼号、宿舍号、床位号。
如果学生需要其他相关配套物品,可以进入选择界面进行选择,如暖瓶、床单、脸盆、拖鞋等物品。然后由宿管人员交由钥匙、押金凭证或其他信息。
3.2.3 缴费管理子系统
缴费管理子系统通过扫描学生的二维码确认学生是否报到注册,若学生信息中没有显示已经报到的信息则应提示“请先到报到处注册报到”的字样,若已经显示有报到信息则系统将会进入下一个选择界面。
选择界面将出现学费缴纳、书费缴纳、住宿费缴纳、军训费用缴纳以及一卡通费用的缴纳等状况。
在学费缴纳中,如果信息显示为“是”,为全额缴纳,结束并将结果发送到服务器端;如果信息显示为“否”,则出现一个选择界面:贷款缴纳、低保缴纳。由学生本人继续进行信息录入。并将最终的选择结果发送到服务器端并保存。
其他费用缴纳中,如果信息显示为“已缴纳费用”,则将结果发送到服务器端并结束;若显示为“没有缴纳费用”,则提示“请先缴纳费用”的字样。
3.2.4 服务器显示子系统
服务器显示子系统可以按院系、专业、班级或姓名查询学生的报到注册情况、宿舍入住情况、费用缴纳情况,并可进行汇总统计或分析,也可进行打印,省略了很多人工录入操作,节省了人力物力。
4 系统实现
4.1 用户界面设计
应用程序的设计主要涉及两个层面,一个是功能,一个是界面,界面设计不能因为功能的复杂而变得不易操作,从而失去友好性。
用户界面开发使用GUI可视化设计器—Droid-Draw,DroidDraw是一个基于Java Swing的Android界面设计器(如图2所示),通过它来生成复杂的Android Layout XML文件,Android的Layout和Swing Layout有很好的对应,因此设计器代码编写起来比较容易。
图2 DroidDraw的界面
界面设计主要是对各个控件的编辑,把右边的控件拖放到左边的界面上后,单击右下方的“生成”按钮,即可快速生成对应的XML代码[10]。通过这个工具可以布局应用程序的界面,其对操作的描述完全是按照Android SDK中关于界面布局的解析。最终通过编辑,可以得到下面的运行界面,如图3所示。
图3 运行结果
4.2 移动客户端开发环境
开发基于Android的客户端,需要下载并安装配置java JDK,eclipse,Android SDK,一系列安装配置过程完成以后,新建Android项目,如图4所示。
图4 new界面
选择新建Android Project项目,点击Next按钮,进入如下界面,如图5所示。
4.3 通信模块的实现
Google以网络搜索引擎起家,因此在Android SDK中已经集成了Apache的Http Client模块,所以应用HTTP协议进行相关的程序开发就很容易了。在这里需要注意的是,在Android中,所集成的Http Client并非是常见的Jakarta Commons HttpClient3.x(也就是org.apache.commons.httpclient.*pack)而是HttpClient.0(org.apache.http.*)。
图5 new android project界面
在主程序重写onClick()方法中,分别使用Http Post对象与HttpGet对象来发出HttpRequest,其中要注意的是Post运行,传递变量必须用NameValue-Pair[]数组存储,通过httpRequest.setEntity()方法来发出HTTP请求。
此外,也必须通过DefaultHttpClient().execute(httpRequests)添加HttpResponse对象来接收Web Server的回复,再通过httpResponse.getEntity()取出回复信息,最后将网页的运行结果取回,显示在Text View当中,完成HTTP连接程序。
4.4 二维条码扫描模块的实现
为了实现二维条形码的扫描,需要使用开源组件zxing,它支持目前所有流行的条码(一维码,二维码),并且在所有开源组件里面是识别最好的。这个开源组件支持的条码有如下:UPC-A and UPCE、EAN-8 and EAN-13、Code 39、Code 93、Code 128、QR Code、ITF、Codabar、RSS-14(all variants)、Data Matrix、PDF 417('lpha'quality)。
4.4.1 zxing的使用方法
(1)下载zxing组件:
源码和文档说明:
地址如下:
http://code.google.com/p/zxing/downloads/detail?name=ZXing-1.6.zip&can=2&q=Barcode Scanner3.5.apk
这个是编译好的一个可安装apk程序。
(2)完全打开模拟器
安装BarcodeScanner3.5.apk
cmd中cd到sdk目录
利用adb命令安装BarcodeScanner3.5.apk
adb install BarcodeScanner3.5.apk所在目录,请确定安装成功了。
(3)运行
运行结果如图6所示。
图6 运行结果
4.4.2 zxing的编译
(1)准备编译包
下载以下组件:
Zxing:http://code.google.com/p/zxing/
Ant:http://ant.apache.org/
Proguard:http://proguard.sourceforge.net/index.html#/downloads.html
(2)配置环境变量
(3)编译
cd到core目录然后ant!
BUILD SUCCESSFUL
Total time:*second
表示成功编译!
然后编译android
cd../android
ant
5 结束语
应用较为流行的Android系统移动智能终端,通过对印在录取通知书上的二维条形码进行扫描,实现了新生报到系统的移动客户端与原有的新生报到系统服务器无缝连接,省去了部分硬件配置,省去了大量的查找时间,节约了人力物力,提升了工作效率。
本移动客户端可以随时随地进行新生报到相关信息查询,非常方便。院领导可以按所在系、所学专业、学生所在班级查询报到率和报到人数、缴费情况、宿舍入住及住宿费缴纳情况,并可对查询结果进行显示、打印等操作。根据查询结果领导可以快速有效准确的进行人员和资源调配,更好的进行新生报到工作的决策。
[1] 罗瑾.高校迎新管理信息系统的设计与实现[D].成都:电子科技大学,2013.
LUO Jin.Design and implementation of registration system in college[D].Chengdu:University of Electronic Science and Technology,2013.
[2] 张爽.条形码技术在医技计费中的应用[J].中国科技博览,2010,29:47-50.
ZHANG Shuang.Application of bar code technology in medical billing[J].China Science and Technology Review,2010,29:47-50.
[3] 宋晓.基于便携式设备二维条码识别[D].南京:南京理工大学,2013.
SONG Xiao.Two-dimension barcode recognition basedon portable equipment[D].Nanjing:Nanjing University of Science and Technology,2013.
[4] 徐小平.基于手机二维码的电子票据服务系统设计[J].电脑与电信,2008(12):80-82.
XU Xiao-ping.Design of the electronic bill service system based on mobile phone two-dimensional code[J].Computer and Telecommunications,2008(12):80-82.
[5] 翟玉福.条形码印刷在商品包装中的应用[J].今日印刷,2008(9):65-67.
ZHAIYu-fu.Application of commodity packaging on bar code printing[J].Print Today,2008(9):65-67.
[6] 杜志俊.PDF417二维条形码的读取和识别技术[D].长沙:中南大学,2009.DU Zhi-jun.Read and recogni
tion technology of PDF417 two-dimension barcode[D].Changsha:Central South University,2009.
[7] 成诚.PDF417二维条码识别技术的研究及其在Linux平台下的实现[D].南京:南京航空航天大学,2008.
CHENG Cheng.Study of PDF417 two-dimensional bar code identification technology and implementation on Linux platform[D].Nanjing:Nanjing University of Aeronautics and Astronautics,2008.
[8] 张艳春.产品身份证的百科全书平台[J].互联网天地,2011(1):34-36.
ZHANG Yan-chun.Encyclopedia platform of product ID[J].China Internet,2011(1):34-36.
[9] 程琛韡.中国移动手机二维码的市场分析[D].北京:北京邮电大学,2007.
CHENG Chen-wei.Themarket analysis of two-dimensional code on China mobile phone[D].Beijing:Beijing University of Posts and Telecommunications,2007.
[10] 李瑞花.基于Android的XML解析技术的分析[J].计算机时代,2010(12):37-39.
LI Rui-hua.XML analysis?technology based on Android[J].Computer Era,2010(12):37-39.
Design of Registration System Based on Mobile Client of 2D Barcode
Kang Suming,Zhang Tiangang,Zhang Jing’an
(School of Mathematics and Computer Science,Shanxi Datong University,Datong 037009,China)
In this paper,two-dimensional(2D)barcodes equipment for information storage and identification and the android development platform are studied.Combining with the actual needs of the university,the demands of the university students are surveyed and analyzed to optimize the registration system.2D barcode technology and the design ofmobile client are used to replace the original PC client with Android.By scanning 2D barcode on the admission notice,the freshmen enrollmentmanagement including payment and dorm assignment can be conducted conveniently.In trial test,it runs stably and the response time is shorter than the PC system,so,it effectively releases the stress caused by long time waiting in line for registration and complex data statistics,and improves the work efficiency.
Admission Registration System;2D barcode;Mobile client;Android
10.3969/j.issn.1002-2279.2015.03.005
TP311.52
A
1002-2279(2015)03-0012-05
山西省高等学校教学改革项目[J2012073];山西省高等学校大学生创新创业训练项目[2013270];山西省软科学研究计划项目[2014041049-1];山西省大同市政府专项研究项目[2014001]
康苏明(1975-),男,山西左云人,硕士,副教授,主研方向:计算机网络及应用技术。
2014-11-24