康蘇明,張?zhí)靹?,張景?/p>
(山西大同大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,大同037009)
·微機(jī)網(wǎng)絡(luò)與通信·
基于二維條形碼的新生報(bào)到系統(tǒng)客戶端設(shè)計(jì)?
康蘇明,張?zhí)靹偅瑥埦鞍?/p>
(山西大同大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,大同037009)
通過(guò)對(duì)二維條形碼的信息存儲(chǔ)和識(shí)別設(shè)備及android開(kāi)發(fā)系統(tǒng)平臺(tái)的深入探索和實(shí)踐,結(jié)合高等院校的實(shí)際需要,進(jìn)行了高校對(duì)學(xué)生信息量的需求調(diào)查,并進(jìn)行了專項(xiàng)分析,利用這些信息對(duì)新生報(bào)到系統(tǒng)進(jìn)行了優(yōu)化。采用二維條形碼技術(shù)和移動(dòng)客戶端設(shè)計(jì),用android移動(dòng)客戶端代替原有的PC客戶端,通過(guò)掃描錄取通知書(shū)上的二維條形碼更加方便對(duì)新生入學(xué)報(bào)到的管理,包括新生的繳費(fèi)問(wèn)題、宿舍分配問(wèn)題等工作。系統(tǒng)經(jīng)試用運(yùn)行穩(wěn)定,響應(yīng)時(shí)間較原有PC端有所縮短,有效緩解了新生報(bào)到時(shí)長(zhǎng)時(shí)間排隊(duì)等候、數(shù)據(jù)統(tǒng)計(jì)復(fù)雜等問(wèn)題所帶來(lái)的壓力,提高了工作效率。
入學(xué)報(bào)到系統(tǒng);二維條形碼;移動(dòng)客戶端;android系統(tǒng)
入學(xué)報(bào)到是每個(gè)高校接待新生的必經(jīng)流程[1],傳統(tǒng)的入學(xué)報(bào)到需要大量的人力、物力,包括安排工作人員,接電,配備pc機(jī)等。報(bào)到整個(gè)過(guò)程耗時(shí)較長(zhǎng),工作效率低下。目前互聯(lián)網(wǎng)技術(shù)已非常成熟,利用移動(dòng)智能終端掃描新生錄取通知書(shū)上的二維條形碼,使學(xué)生信息的登記、統(tǒng)計(jì)及匯總分析工作得以簡(jiǎn)化,減少了勞動(dòng)力和一些繁瑣的錄入工作,極大提高了新生入學(xué)的報(bào)到效率。
2.1 條形碼技術(shù)
條形碼(barcode)是將寬度不等的多個(gè)黑條和空白,按照一定的編碼規(guī)則排列,用以表達(dá)一組信息的圖形標(biāo)識(shí)符,這就是我們常說(shuō)的一維條形碼。常見(jiàn)的條形碼是由反射率相差很大的黑條(簡(jiǎn)稱條)和白條(簡(jiǎn)稱空)排成的平行線圖案。條形碼可以標(biāo)出物品的生產(chǎn)國(guó)、制造廠家、商品名稱、生產(chǎn)日期、圖書(shū)分類(lèi)號(hào)、郵件起止地點(diǎn)、類(lèi)別、日期等許多信息,因而在商品流通、圖書(shū)管理、郵政管理、銀行系統(tǒng)等許多領(lǐng)域都得到廣泛的應(yīng)用[2]。
近些年來(lái),科技日益創(chuàng)新,更多的資訊都需要用條碼符號(hào)來(lái)表示,然而一維條碼所能表示的最大資料長(zhǎng)度是15個(gè)字元,適合存放key,即關(guān)鍵索引值,不能進(jìn)行產(chǎn)品描述,具有很大的局限性。除此之外,一維條碼還有一個(gè)非常明顯的缺點(diǎn),即在它的垂直方向不能攜帶任何信息,因此資料密度值偏低。為了在固定面積上表示出盡可能多的信息,二維條形碼應(yīng)運(yùn)而生[3]。它是按照某種特定的規(guī)律,用某種特定的幾何圖形按一定規(guī)律在平面(二維方向)上分布的黑白相間的圖形記錄數(shù)據(jù)符號(hào)信息的[4]。與一維條形碼相比,二維條形碼可以從橫縱兩個(gè)方向上同時(shí)表示資料信息,有效彌補(bǔ)了一維條形碼的缺陷,如圖1所示。
圖1 二維條形碼
2.2 二維條形碼的分類(lèi)及特點(diǎn)
目前最常使用的二維條形碼可以分為矩陣式的二維形條碼、堆疊式的二維條形碼和郵政二維條形碼[5],表1介紹了三種二維碼的特點(diǎn)及典型代表。
表1 二維條形碼的分類(lèi)及特點(diǎn)
2.3 二維條形碼的識(shí)讀設(shè)備
二維條碼的閱讀設(shè)備按閱讀原理的不同可分為:
(1)線性CCD和線性圖像式閱讀器(Linear Imager)
可閱讀一維條碼和線性堆疊式二維碼(如PDF417),在閱讀二維碼時(shí)需要沿條碼的垂直方向掃過(guò)整個(gè)條碼,我們稱為“掃動(dòng)式閱讀”。這類(lèi)產(chǎn)品比較便宜。
(2)帶光柵的激光閱讀器
可閱讀一維條碼和線性堆疊式二維碼。閱讀二維碼時(shí)將光線對(duì)準(zhǔn)條碼,由光柵元件完成垂直掃描,不需要手工掃動(dòng)。
(3)圖像式閱讀器(Image Reader)
采用面陣CCD攝像方式將條碼圖像攝取后進(jìn)行分析和解碼,可閱讀一維條碼和所有類(lèi)型的二維條碼。
入學(xué)報(bào)到系統(tǒng)整體是采用一臺(tái)服務(wù)器與帶有Andriod系統(tǒng)的智能移動(dòng)終端相連,通過(guò)掃描二維碼及對(duì)移動(dòng)智能終端的操作實(shí)現(xiàn)數(shù)據(jù)傳輸,涉及到新生入學(xué)報(bào)到、宿舍安排、交費(fèi)等全過(guò)程的信息傳遞。
3.1 移動(dòng)智能終端
移動(dòng)智能終端是指安裝有開(kāi)放式操作系統(tǒng)的終端,可裝載相應(yīng)的程序?qū)崿F(xiàn)相應(yīng)的功能,有高速接入能力和豐富的人機(jī)交互界面,以智能手機(jī)、平板電腦、電子閱讀器等為代表。移動(dòng)智能終端已經(jīng)成為互聯(lián)網(wǎng)業(yè)務(wù)的關(guān)鍵入口和主要?jiǎng)?chuàng)新平臺(tái),其操作系統(tǒng)平臺(tái)的開(kāi)放性、人機(jī)交互體驗(yàn)的獨(dú)特性和攜帶的便捷性顯著區(qū)別于個(gè)人電腦、功能移動(dòng)智能終端等其他產(chǎn)品。智能終端的操作系統(tǒng)主要有谷歌開(kāi)發(fā)的安卓系統(tǒng),諾基亞的塞班系統(tǒng),蘋(píng)果的iOS及微軟的windows phone,安卓系統(tǒng)具有強(qiáng)大的開(kāi)放性、豐富的硬件支持功能和便利的開(kāi)發(fā)條件,一度成為開(kāi)放式操作系統(tǒng)的主流[9]。
3.2 功能設(shè)計(jì)
入學(xué)報(bào)到系統(tǒng)劃分為四個(gè)子系統(tǒng),分別為注冊(cè)管理子系統(tǒng),宿舍管理子系統(tǒng),繳費(fèi)管理子系統(tǒng)和服務(wù)器顯示子系統(tǒng)。
3.2.1 注冊(cè)管理子系統(tǒng)
注冊(cè)為入學(xué)報(bào)到的第一步,主要查驗(yàn)新生的基本信息。
(1)用戶管理
用戶登錄系統(tǒng)時(shí),在系統(tǒng)中增加密碼一項(xiàng),用戶只有輸入正確的密碼才能進(jìn)入系統(tǒng)進(jìn)行使用。
(2)信息管理
a.通過(guò)掃描錄取通知書(shū)上的二維碼,核實(shí)學(xué)生的基本信息。如無(wú)基本信息,顯示“無(wú)該生信息”。同時(shí)通過(guò)系統(tǒng)添加移動(dòng)智能終端號(hào)、父母親基本情況、家庭住址、聯(lián)系方式等信息,由學(xué)生本人核對(duì)后發(fā)送到服務(wù)器端。
b.根據(jù)學(xué)生的具體情況選擇信息可選項(xiàng),如上交檔案、團(tuán)關(guān)系、戶口遷移證明、錄取通知書(shū)等,選擇完成后系統(tǒng)自動(dòng)保存并發(fā)送到服務(wù)器端。
c.按所在院系、班級(jí)查詢新生報(bào)到人數(shù)、宿舍入住情況、繳費(fèi)情況,對(duì)查詢結(jié)果可以進(jìn)行顯示、打印等操作。
3.2.2 宿舍管理子系統(tǒng)
宿舍管理子系統(tǒng)通過(guò)掃描學(xué)生的二維碼確認(rèn)學(xué)生是否報(bào)到注冊(cè),若學(xué)生的個(gè)人信息中沒(méi)有顯示報(bào)到注冊(cè)信息則應(yīng)提示“請(qǐng)先到報(bào)到處注冊(cè)報(bào)到”的字樣,若已經(jīng)有注冊(cè)信息,則界面將顯示為“已報(bào)到”。在宿舍信息界面,顯示學(xué)生應(yīng)該入住的宿舍樓號(hào)、宿舍號(hào)、床位號(hào)。
如果學(xué)生需要其他相關(guān)配套物品,可以進(jìn)入選擇界面進(jìn)行選擇,如暖瓶、床單、臉盆、拖鞋等物品。然后由宿管人員交由鑰匙、押金憑證或其他信息。
3.2.3 繳費(fèi)管理子系統(tǒng)
繳費(fèi)管理子系統(tǒng)通過(guò)掃描學(xué)生的二維碼確認(rèn)學(xué)生是否報(bào)到注冊(cè),若學(xué)生信息中沒(méi)有顯示已經(jīng)報(bào)到的信息則應(yīng)提示“請(qǐng)先到報(bào)到處注冊(cè)報(bào)到”的字樣,若已經(jīng)顯示有報(bào)到信息則系統(tǒng)將會(huì)進(jìn)入下一個(gè)選擇界面。
選擇界面將出現(xiàn)學(xué)費(fèi)繳納、書(shū)費(fèi)繳納、住宿費(fèi)繳納、軍訓(xùn)費(fèi)用繳納以及一卡通費(fèi)用的繳納等狀況。
在學(xué)費(fèi)繳納中,如果信息顯示為“是”,為全額繳納,結(jié)束并將結(jié)果發(fā)送到服務(wù)器端;如果信息顯示為“否”,則出現(xiàn)一個(gè)選擇界面:貸款繳納、低保繳納。由學(xué)生本人繼續(xù)進(jìn)行信息錄入。并將最終的選擇結(jié)果發(fā)送到服務(wù)器端并保存。
其他費(fèi)用繳納中,如果信息顯示為“已繳納費(fèi)用”,則將結(jié)果發(fā)送到服務(wù)器端并結(jié)束;若顯示為“沒(méi)有繳納費(fèi)用”,則提示“請(qǐng)先繳納費(fèi)用”的字樣。
3.2.4 服務(wù)器顯示子系統(tǒng)
服務(wù)器顯示子系統(tǒng)可以按院系、專業(yè)、班級(jí)或姓名查詢學(xué)生的報(bào)到注冊(cè)情況、宿舍入住情況、費(fèi)用繳納情況,并可進(jìn)行匯總統(tǒng)計(jì)或分析,也可進(jìn)行打印,省略了很多人工錄入操作,節(jié)省了人力物力。
4.1 用戶界面設(shè)計(jì)
應(yīng)用程序的設(shè)計(jì)主要涉及兩個(gè)層面,一個(gè)是功能,一個(gè)是界面,界面設(shè)計(jì)不能因?yàn)楣δ艿膹?fù)雜而變得不易操作,從而失去友好性。
用戶界面開(kāi)發(fā)使用GUI可視化設(shè)計(jì)器—Droid-Draw,DroidDraw是一個(gè)基于Java Swing的Android界面設(shè)計(jì)器(如圖2所示),通過(guò)它來(lái)生成復(fù)雜的Android Layout XML文件,Android的Layout和Swing Layout有很好的對(duì)應(yīng),因此設(shè)計(jì)器代碼編寫(xiě)起來(lái)比較容易。
圖2 DroidDraw的界面
界面設(shè)計(jì)主要是對(duì)各個(gè)控件的編輯,把右邊的控件拖放到左邊的界面上后,單擊右下方的“生成”按鈕,即可快速生成對(duì)應(yīng)的XML代碼[10]。通過(guò)這個(gè)工具可以布局應(yīng)用程序的界面,其對(duì)操作的描述完全是按照Android SDK中關(guān)于界面布局的解析。最終通過(guò)編輯,可以得到下面的運(yùn)行界面,如圖3所示。
圖3 運(yùn)行結(jié)果
4.2 移動(dòng)客戶端開(kāi)發(fā)環(huán)境
開(kāi)發(fā)基于Android的客戶端,需要下載并安裝配置java JDK,eclipse,Android SDK,一系列安裝配置過(guò)程完成以后,新建Android項(xiàng)目,如圖4所示。
圖4 new界面
選擇新建Android Project項(xiàng)目,點(diǎn)擊Next按鈕,進(jìn)入如下界面,如圖5所示。
4.3 通信模塊的實(shí)現(xiàn)
Google以網(wǎng)絡(luò)搜索引擎起家,因此在Android SDK中已經(jīng)集成了Apache的Http Client模塊,所以應(yīng)用HTTP協(xié)議進(jìn)行相關(guān)的程序開(kāi)發(fā)就很容易了。在這里需要注意的是,在Android中,所集成的Http Client并非是常見(jiàn)的Jakarta Commons HttpClient3.x(也就是org.apache.commons.httpclient.*pack)而是HttpClient.0(org.apache.http.*)。
圖5 new android project界面
在主程序重寫(xiě)onClick()方法中,分別使用Http Post對(duì)象與HttpGet對(duì)象來(lái)發(fā)出HttpRequest,其中要注意的是Post運(yùn)行,傳遞變量必須用NameValue-Pair[]數(shù)組存儲(chǔ),通過(guò)httpRequest.setEntity()方法來(lái)發(fā)出HTTP請(qǐng)求。
此外,也必須通過(guò)DefaultHttpClient().execute(httpRequests)添加HttpResponse對(duì)象來(lái)接收Web Server的回復(fù),再通過(guò)httpResponse.getEntity()取出回復(fù)信息,最后將網(wǎng)頁(yè)的運(yùn)行結(jié)果取回,顯示在Text View當(dāng)中,完成HTTP連接程序。
4.4 二維條碼掃描模塊的實(shí)現(xiàn)
為了實(shí)現(xiàn)二維條形碼的掃描,需要使用開(kāi)源組件zxing,它支持目前所有流行的條碼(一維碼,二維碼),并且在所有開(kāi)源組件里面是識(shí)別最好的。這個(gè)開(kāi)源組件支持的條碼有如下: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組件:
源碼和文檔說(shuō)明:
地址如下:
http://code.google.com/p/zxing/downloads/detail?name=ZXing-1.6.zip&can=2&q=Barcode Scanner3.5.apk
這個(gè)是編譯好的一個(gè)可安裝apk程序。
(2)完全打開(kāi)模擬器
安裝BarcodeScanner3.5.apk
cmd中cd到sdk目錄
利用adb命令安裝BarcodeScanner3.5.apk
adb install BarcodeScanner3.5.apk所在目錄,請(qǐng)確定安裝成功了。
(3)運(yùn)行
運(yùn)行結(jié)果如圖6所示。
圖6 運(yùn)行結(jié)果
4.4.2 zxing的編譯
(1)準(zhǔn)備編譯包
下載以下組件:
Zxing:http://code.google.com/p/zxing/
Ant:http://ant.apache.org/
Proguard:http://proguard.sourceforge.net/index.html#/downloads.html
(2)配置環(huán)境變量
(3)編譯
cd到core目錄然后ant!
BUILD SUCCESSFUL
Total time:*second
表示成功編譯!
然后編譯android
cd../android
ant
應(yīng)用較為流行的Android系統(tǒng)移動(dòng)智能終端,通過(guò)對(duì)印在錄取通知書(shū)上的二維條形碼進(jìn)行掃描,實(shí)現(xiàn)了新生報(bào)到系統(tǒng)的移動(dòng)客戶端與原有的新生報(bào)到系統(tǒng)服務(wù)器無(wú)縫連接,省去了部分硬件配置,省去了大量的查找時(shí)間,節(jié)約了人力物力,提升了工作效率。
本移動(dòng)客戶端可以隨時(shí)隨地進(jìn)行新生報(bào)到相關(guān)信息查詢,非常方便。院領(lǐng)導(dǎo)可以按所在系、所學(xué)專業(yè)、學(xué)生所在班級(jí)查詢報(bào)到率和報(bào)到人數(shù)、繳費(fèi)情況、宿舍入住及住宿費(fèi)繳納情況,并可對(duì)查詢結(jié)果進(jìn)行顯示、打印等操作。根據(jù)查詢結(jié)果領(lǐng)導(dǎo)可以快速有效準(zhǔn)確的進(jìn)行人員和資源調(diào)配,更好的進(jìn)行新生報(bào)到工作的決策。
[1] 羅瑾.高校迎新管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2013.
LUO Jin.Design and implementation of registration system in college[D].Chengdu:University of Electronic Science and Technology,2013.
[2] 張爽.條形碼技術(shù)在醫(yī)技計(jì)費(fèi)中的應(yīng)用[J].中國(guó)科技博覽,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] 宋曉.基于便攜式設(shè)備二維條碼識(shí)別[D].南京:南京理工大學(xué),2013.
SONG Xiao.Two-dimension barcode recognition basedon portable equipment[D].Nanjing:Nanjing University of Science and Technology,2013.
[4] 徐小平.基于手機(jī)二維碼的電子票據(jù)服務(wù)系統(tǒng)設(shè)計(jì)[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] 翟玉福.條形碼印刷在商品包裝中的應(yīng)用[J].今日印刷,2008(9):65-67.
ZHAIYu-fu.Application of commodity packaging on bar code printing[J].Print Today,2008(9):65-67.
[6] 杜志俊.PDF417二維條形碼的讀取和識(shí)別技術(shù)[D].長(zhǎng)沙:中南大學(xué),2009.DU Zhi-jun.Read and recogni
tion technology of PDF417 two-dimension barcode[D].Changsha:Central South University,2009.
[7] 成誠(chéng).PDF417二維條碼識(shí)別技術(shù)的研究及其在Linux平臺(tái)下的實(shí)現(xiàn)[D].南京:南京航空航天大學(xué),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] 張艷春.產(chǎn)品身份證的百科全書(shū)平臺(tái)[J].互聯(lián)網(wǎng)天地,2011(1):34-36.
ZHANG Yan-chun.Encyclopedia platform of product ID[J].China Internet,2011(1):34-36.
[9] 程琛韡.中國(guó)移動(dòng)手機(jī)二維碼的市場(chǎng)分析[D].北京:北京郵電大學(xué),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解析技術(shù)的分析[J].計(jì)算機(jī)時(shí)代,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
山西省高等學(xué)校教學(xué)改革項(xiàng)目[J2012073];山西省高等學(xué)校大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練項(xiàng)目[2013270];山西省軟科學(xué)研究計(jì)劃項(xiàng)目[2014041049-1];山西省大同市政府專項(xiàng)研究項(xiàng)目[2014001]
康蘇明(1975-),男,山西左云人,碩士,副教授,主研方向:計(jì)算機(jī)網(wǎng)絡(luò)及應(yīng)用技術(shù)。
2014-11-24