朱齊嬡 羅 俊
(1.湛江師范學(xué)院信息科學(xué)與技術(shù)學(xué)院 廣東 524048;2.廣州工商職業(yè)技術(shù)學(xué)院電子工程系 廣東 510850)
隨著社會(huì)經(jīng)濟(jì)的發(fā)展,會(huì)展業(yè)所帶來(lái)的經(jīng)濟(jì)效益和社會(huì)效益將越來(lái)越明顯。會(huì)展業(yè)是一種通過(guò)舉辦各種形式的會(huì)議和展覽、展銷(xiāo),能夠帶來(lái)直接或間接經(jīng)濟(jì)效益和社會(huì)效益的產(chǎn)業(yè)[1]。企業(yè)客服人員在會(huì)展上無(wú)法為采購(gòu)商一一介紹展品特點(diǎn)和相關(guān)信息,就不能充分利用會(huì)展提高企業(yè)經(jīng)濟(jì)效益,通過(guò)移動(dòng)終端的應(yīng)用將能很好的解決這個(gè)問(wèn)題。移動(dòng)終端是指移動(dòng)通信終端,廣義上包括手機(jī)、筆記本、平板電腦等,企業(yè)只需將產(chǎn)品的主要信息生成二維碼標(biāo)簽,讓用戶(hù)通過(guò)掃描產(chǎn)品上的二維碼標(biāo)簽來(lái)了解產(chǎn)品的相關(guān)信息,通過(guò)移動(dòng)終端對(duì)產(chǎn)品進(jìn)行下單購(gòu)買(mǎi)。
二維碼(2-dimensional barcode)是用某種特定的幾何圖形按一定規(guī)律在平面(二維方向上)分布的黑白相間的圖形記錄數(shù)據(jù)符號(hào)信息,在代碼編制上巧妙地利用構(gòu)成計(jì)算機(jī)內(nèi)部邏輯基礎(chǔ)的“0”、“1”比特流的概念,使用若干個(gè)與二進(jìn)制相對(duì)應(yīng)的幾何形體來(lái)表示文字?jǐn)?shù)值信息,通過(guò)圖像輸入設(shè)備或光電掃描設(shè)備自動(dòng)識(shí)讀以實(shí)現(xiàn)信息自動(dòng)處理[2]。它具有儲(chǔ)存信息容量大、識(shí)別響應(yīng)速度快、糾錯(cuò)能力強(qiáng)等特點(diǎn),可以用來(lái)儲(chǔ)存文字、數(shù)據(jù)、圖形等信息。
如圖1所示,二維碼由正方形模塊組成的一個(gè)正方形矩陣列構(gòu)成,它包括編碼區(qū)、功能圖形和空白區(qū)三部分。編碼區(qū)是由文本信息轉(zhuǎn)化的二進(jìn)制碼組成,它包括格式信息、版本信息、數(shù)據(jù)和糾錯(cuò)碼字。功能圖形包括位置探測(cè)圖形、位置探測(cè)圖形分隔符、定位圖形和校正圖形[3]。本系統(tǒng)根據(jù)二維碼的特性和優(yōu)點(diǎn),采用它來(lái)作為產(chǎn)品的標(biāo)簽,客戶(hù)通過(guò)移動(dòng)終端掃描二維碼便可獲取對(duì)應(yīng)信息。
圖1 QRCode二維條碼符號(hào)結(jié)構(gòu)圖
本系統(tǒng)框架結(jié)構(gòu)(見(jiàn)圖2)主要由移動(dòng)終端應(yīng)用程序、PC端Socket服務(wù)器、二維碼生成器、后臺(tái)管理軟件和數(shù)據(jù)庫(kù)構(gòu)成。
圖2 系統(tǒng)框架結(jié)構(gòu)圖
(1)移動(dòng)終端應(yīng)用程序主要功能有:二維碼掃描識(shí)別功能,通過(guò)調(diào)用移動(dòng)終端的攝像頭對(duì)二維碼表標(biāo)簽進(jìn)行掃描,然后調(diào)用ZXing包的API進(jìn)行解析,解析成功后返回結(jié)果以文本信息的形式展示在用戶(hù)界面上結(jié)果并顯示在界面上。訂單瀏覽與提交功能,用戶(hù)填寫(xiě)形成的訂單在界面上顯示供用戶(hù)核查確認(rèn),確認(rèn)提交后發(fā)送到Socket服務(wù)器并儲(chǔ)存在數(shù)據(jù)庫(kù)。
(2)PC端 Socket服務(wù)器的主要功能為接受客戶(hù)端連接請(qǐng)求,判別客戶(hù)端發(fā)送的操作命令,根據(jù)命令進(jìn)行連接SQL Server數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)讀寫(xiě)和數(shù)據(jù)儲(chǔ)存等功能。
(3)二維碼生成器的功能為根據(jù)用戶(hù)在 PC機(jī)程序界面輸入的文本信息生成相應(yīng)的二維碼標(biāo)簽,并保存為png格式圖片。
(4)后臺(tái)管理軟件主要功能為對(duì)數(shù)據(jù)庫(kù)中的產(chǎn)品信息、客戶(hù)信息進(jìn)行增刪查改、瀏覽客戶(hù)訂單等操作。
(5)數(shù)據(jù)庫(kù)主要負(fù)責(zé)產(chǎn)品信息和客戶(hù)訂單的儲(chǔ)存。
移動(dòng)終端應(yīng)用程序在Android系統(tǒng)平臺(tái)下進(jìn)行開(kāi)發(fā),根據(jù)系統(tǒng)的功能要求設(shè)計(jì)相應(yīng)的交互界面實(shí)現(xiàn)產(chǎn)品信息查詢(xún)、產(chǎn)品型號(hào)選擇和下達(dá)訂單的功能。
用戶(hù)輸入登錄信息并驗(yàn)證成功后進(jìn)入主界面,通過(guò)程序界面的功能按鈕啟用攝像頭掃描二維碼,掃描所得信息經(jīng)過(guò)調(diào)用ZXing包中的API進(jìn)行解析,解析結(jié)果顯示在用戶(hù)界面,用戶(hù)在訂單填寫(xiě)界面上填寫(xiě)產(chǎn)品數(shù)量等信息,生成的訂單信息顯示在訂單界面。用戶(hù)確認(rèn)提交訂單后經(jīng)過(guò)WiFi網(wǎng)絡(luò)將訂單信息發(fā)送到PC端Socket服務(wù)器,連接數(shù)據(jù)庫(kù)進(jìn)行儲(chǔ)存。
服務(wù)器與客戶(hù)端的通信設(shè)計(jì)框圖見(jiàn)圖3。
圖3 客戶(hù)端與服務(wù)器通信
客戶(hù)端設(shè)計(jì)一個(gè) Android后臺(tái)服務(wù)(Service)用于建立Socket通信[4]。Service是一個(gè)應(yīng)用程序組件,它能完成長(zhǎng)時(shí)間運(yùn)行的操作在后臺(tái),并且不提供用戶(hù)接口[5]。應(yīng)用程序組件能開(kāi)啟一個(gè) Service并且它將繼續(xù)運(yùn)行在后臺(tái)即使用戶(hù)切換到其他應(yīng)用程序。程序通過(guò)startService()函數(shù)來(lái)啟動(dòng)這個(gè)Service。Service啟動(dòng)后根據(jù)用戶(hù)輸入的 IP和端口設(shè)置進(jìn)行初始化Socket及向服務(wù)端請(qǐng)求連接,成功后獲取Socket輸入輸出流??蛻?hù)登錄時(shí)將用戶(hù)登錄信息寫(xiě)入輸出流中,通過(guò)WiFi網(wǎng)絡(luò)發(fā)送到服務(wù)器。
PC端Socket服務(wù)器初始化Socket后持續(xù)監(jiān)聽(tīng)客戶(hù)端請(qǐng)求,驗(yàn)證用戶(hù)登錄信息成功后向客戶(hù)端反饋成功信息。客戶(hù)端登陸后進(jìn)入功能選擇界面,客戶(hù)可以使用功能界面對(duì)產(chǎn)品二維碼進(jìn)行掃描,隨后發(fā)送一條查詢(xún)命令到服務(wù)器,連接到數(shù)據(jù)庫(kù)并查詢(xún)產(chǎn)品信息以顯示在客戶(hù)端界面??蛻?hù)填寫(xiě)產(chǎn)品數(shù)量、型號(hào)等信息并確認(rèn)后,程序會(huì)自動(dòng)生成客戶(hù)訂單。確認(rèn)提交訂單后由PC端的 Socket服務(wù)器接收數(shù)據(jù),若解析數(shù)據(jù)成功將連接數(shù)據(jù)庫(kù)進(jìn)行儲(chǔ)存。客服人員根據(jù)訂單進(jìn)行核查,發(fā)貨等相關(guān)工作。
二維碼的生成(如圖4)主要是通過(guò)二維碼生成器來(lái)實(shí)現(xiàn),本系統(tǒng)二維碼生成器采用Java語(yǔ)言可視化編程進(jìn)行開(kāi)發(fā),通過(guò)調(diào)用ZXing庫(kù)API將用戶(hù)在程序界面輸入的需要生成二維碼的文本信息進(jìn)行編碼,具體函數(shù)為encode(string,format,width,height,hints),string為輸入的字符串,format為要生成的二維碼類(lèi)型,width和height分別為二維碼圖片的寬度和長(zhǎng)度。調(diào)用成功后即可生成一張包含關(guān)鍵信息的二維碼并保存為png格式的圖片。
圖4 二維碼的生成與識(shí)別流程圖
會(huì)展采購(gòu)系統(tǒng)集成了二維碼掃描功能,Socket網(wǎng)絡(luò)通信和數(shù)據(jù)庫(kù)管理等一系列技術(shù),可在搭載安卓系統(tǒng)的移動(dòng)終端(如手機(jī))上進(jìn)行安裝,移動(dòng)終端將變成采購(gòu)現(xiàn)場(chǎng)產(chǎn)品信息查詢(xún)的便利工具。摒棄了傳統(tǒng)服裝行業(yè)采購(gòu)過(guò)程中的繁瑣與混亂,簡(jiǎn)化了客服人員的繁瑣的工作,大大提高客戶(hù)的采購(gòu)效率,節(jié)約了商家在賣(mài)場(chǎng)投入的人力資本,降低了處理采購(gòu)過(guò)程中的難度,迎合了會(huì)展的需求,是一個(gè)客戶(hù)易于上手,企業(yè)易于管理的綜合性系統(tǒng),它不僅給企業(yè)帶來(lái)更多的利益,也迎合了會(huì)展經(jīng)濟(jì)時(shí)代的發(fā)展。
[1]程建林,艾春玲.會(huì)展經(jīng)濟(jì)發(fā)展、會(huì)展城市競(jìng)爭(zhēng)力與城市功能提升[J].城市規(guī)劃,2008,32(10):15-20.
[2]張晶晶.二維碼識(shí)別系統(tǒng)在手機(jī)端的研究與實(shí)現(xiàn)[J].化學(xué)工程與裝備,2013(2):164-166.
[3]馮漢祿,黃穎為,牛曉嬌,錢(qián)銀超.QR 碼糾錯(cuò)碼原理及實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2011,31(增刊1):40-42.
[4]歐軍,吳清秀,張洪.基于Socket的網(wǎng)絡(luò)通信技術(shù)研究[J].網(wǎng)絡(luò)安全,2011(7):19-21.
[5]龔成瑩,刑敬宏,胡銀保.基于Json的Android移動(dòng)終端與PHP及MySQL數(shù)據(jù)通信[J].工業(yè)儀表與自動(dòng)化設(shè)置,2013(1):63-69.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2014年2期