康蘇明,張天剛,張景安
(山西大同大學數學與計算機科學學院,大同037009)
·微機網絡與通信·
基于二維條形碼的新生報到系統客戶端設計?
康蘇明,張天剛,張景安
(山西大同大學數學與計算機科學學院,大同037009)
通過對二維條形碼的信息存儲和識別設備及android開發系統平臺的深入探索和實踐,結合高等院校的實際需要,進行了高校對學生信息量的需求調查,并進行了專項分析,利用這些信息對新生報到系統進行了優化。采用二維條形碼技術和移動客戶端設計,用android移動客戶端代替原有的PC客戶端,通過掃描錄取通知書上的二維條形碼更加方便對新生入學報到的管理,包括新生的繳費問題、宿舍分配問題等工作。系統經試用運行穩定,響應時間較原有PC端有所縮短,有效緩解了新生報到時長時間排隊等候、數據統計復雜等問題所帶來的壓力,提高了工作效率。
入學報到系統;二維條形碼;移動客戶端;android系統
入學報到是每個高校接待新生的必經流程[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攝像方式將條碼圖像攝取后進行分析和解碼,可閱讀一維條碼和所有類型的二維條碼。
入學報到系統整體是采用一臺服務器與帶有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.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
應用較為流行的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