張陽(yáng)+張捐凈
摘要:該文針對(duì)高校固定資產(chǎn)管理工作的特點(diǎn),設(shè)計(jì)了基于Android的學(xué)校固定資產(chǎn)管理系統(tǒng)。通過(guò)Android手機(jī)和服務(wù)器的連接,將固定資產(chǎn)信息下載到Android手機(jī)的SQLite數(shù)據(jù)庫(kù)中。藍(lán)牙掃描槍掃描固定資產(chǎn)上的條形碼,通過(guò)藍(lán)牙傳給手機(jī),從而實(shí)現(xiàn)固定資產(chǎn)清點(diǎn)現(xiàn)場(chǎng)的實(shí)時(shí)信息查詢,信息獲取方便靈活,使用便攜。清點(diǎn)工作中,Android手機(jī)可以實(shí)時(shí)與服務(wù)器保持通信,也可以在有無(wú)線網(wǎng)絡(luò)的情況下將信息下載到服務(wù)器中,在沒有無(wú)線連接的場(chǎng)所進(jìn)行離線工作。使用靈活,現(xiàn)場(chǎng)操作,信息豐富,極大的方便了工作人員面對(duì)學(xué)校復(fù)雜的設(shè)備環(huán)境進(jìn)行資產(chǎn)清點(diǎn)工作。
關(guān)鍵詞:Android;藍(lán)牙;固定資產(chǎn)管理;條形碼;SQLite
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(20171)14-0083-02
1概述
一直以來(lái),學(xué)校的固定資產(chǎn)管理是一項(xiàng)及其復(fù)雜費(fèi)力的工作。首先,學(xué)校有實(shí)驗(yàn)教學(xué)設(shè)備、辦公設(shè)備等種類繁多的大量固定資產(chǎn)。其次,這些固定資產(chǎn)分布在面積廣闊的大學(xué)校園內(nèi),存放在各種復(fù)雜場(chǎng)所。并且很多設(shè)備存放位置偶爾發(fā)生改變。這些因素為大學(xué)校園的固定資產(chǎn)管理工作帶來(lái)了很多不便。傳統(tǒng)的紙筆登記工作方式效率非常低下,需要耗費(fèi)大量的人力物力對(duì)這些信息進(jìn)行維護(hù)。隨著移動(dòng)互聯(lián)技術(shù)的成熟和發(fā)展,越來(lái)越多的相關(guān)技術(shù)應(yīng)用于學(xué)校各個(gè)方面的管理工作當(dāng)中。基于Android的學(xué)校固定資產(chǎn)管理系統(tǒng)使用Android手機(jī)作為管理終端,使用方便,輕松查詢和清點(diǎn),解決了傳統(tǒng)工作方式效率不高、出錯(cuò)概率大、查詢清點(diǎn)現(xiàn)場(chǎng)工作費(fèi)力的問題。
2系統(tǒng)分析與設(shè)計(jì)
基于Android的固定資產(chǎn)管理系統(tǒng)需要完成的工作包括以下幾部分:固定資產(chǎn)信息的下載、設(shè)備現(xiàn)場(chǎng)固定資產(chǎn)信息的查詢和登記、清點(diǎn)結(jié)果的上傳。此外,還要保證數(shù)據(jù)信息的安全,并且適應(yīng)學(xué)校復(fù)雜的設(shè)備存放環(huán)境。充分考慮并解決各種不便情況。
不同于傳統(tǒng)紙筆工作,基于Android的固定資產(chǎn)管理系統(tǒng)可以方便的實(shí)現(xiàn)現(xiàn)場(chǎng)信息快速查詢。無(wú)需人工比對(duì)查詢,只需掃描固定資產(chǎn)上的條形碼,Android手機(jī)就會(huì)自動(dòng)在數(shù)據(jù)庫(kù)中進(jìn)行比對(duì),實(shí)時(shí)展示固定資產(chǎn)的所有信息,也可以在手機(jī)中輸入當(dāng)前固定資產(chǎn)清查情況。所有工作只需要在一部Android手機(jī)上進(jìn)行操作即可。
系統(tǒng)主要結(jié)構(gòu)如圖2所示。主要包括三大硬件部分:固定資產(chǎn)數(shù)據(jù)庫(kù)服務(wù)器、藍(lán)牙掃描槍和Android手機(jī)。
系統(tǒng)采用了Android手機(jī)進(jìn)行固定資產(chǎn)清點(diǎn)工作,可以非常便攜的在復(fù)雜的設(shè)備現(xiàn)場(chǎng)輕松完成固定資產(chǎn)信息查詢、清點(diǎn)和狀態(tài)登記。
Android手機(jī)和數(shù)據(jù)庫(kù)服務(wù)器通過(guò)局域網(wǎng)實(shí)現(xiàn)了基于HTTP協(xié)議的通信,從而可以將數(shù)據(jù)庫(kù)服務(wù)器中學(xué)校固定資產(chǎn)信息發(fā)送到手機(jī),也可以將手機(jī)中對(duì)固定資產(chǎn)的清點(diǎn)結(jié)果上傳到服務(wù)器,通信過(guò)程中的數(shù)據(jù)使用XML進(jìn)行結(jié)構(gòu)化處理。
在進(jìn)行固定資產(chǎn)清點(diǎn)工作時(shí)使用藍(lán)牙掃描槍掃描固定資產(chǎn)上的條形碼標(biāo)簽,掃描槍通過(guò)藍(lán)牙連接Android手機(jī),將條形碼上傳到Android手機(jī)。Andorid手機(jī)根據(jù)條形碼查詢SQLite中存儲(chǔ)的固定資產(chǎn)信息,并添加設(shè)備狀態(tài)信息,完成清點(diǎn)工作。
3通信協(xié)議
Android手機(jī)和掃描槍之間的通信采用藍(lán)牙SPP串口通信方式。Android手機(jī)程序需要?jiǎng)?chuàng)建一個(gè)后臺(tái)服務(wù)Service來(lái)實(shí)現(xiàn)藍(lán)牙狀態(tài)和藍(lán)牙通信的維護(hù)。Android UI線程通過(guò)調(diào)用Service中的接口方法,實(shí)現(xiàn)對(duì)藍(lán)牙設(shè)備搜索、配對(duì)、建立連接和通信。由于藍(lán)牙通信相關(guān)操作大多比較耗時(shí),所以后臺(tái)Service的大部分服務(wù)都是異步方式實(shí)現(xiàn)的,Service通過(guò)廣播的形式通知UI線程藍(lán)牙狀態(tài)的變化和接收數(shù)據(jù)事件的發(fā)生。
Android手機(jī)和條碼掃描器之間采用單工通信方式。藍(lán)牙連接成功后,條碼掃描槍就可以將掃描到的條碼信息發(fā)送給Android手機(jī)。為了保證系統(tǒng)工作的可靠性,考慮到藍(lán)牙掃描槍故障或者現(xiàn)場(chǎng)條件不適合使用。Android程序支持使用手機(jī)自帶攝像頭進(jìn)行條形碼掃描。
由于校園無(wú)線WIFI的全面覆蓋與逐步完善,Android手機(jī)和服務(wù)器之間通過(guò)校園網(wǎng)實(shí)現(xiàn)連接,采用HTFP協(xié)議進(jìn)行數(shù)據(jù)交互。Android端有大量的第三方異步HTYP通信協(xié)議供我們使用,本文使用的是Github上提供的Android-async-http框架。通過(guò)創(chuàng)建一個(gè)AsyncHttpClient對(duì)象并調(diào)用其get方法實(shí)現(xiàn)HTTP請(qǐng)求,并在該方法中傳遞一個(gè)AsyncHttpResponseHandler接口的實(shí)現(xiàn),重寫onSHccess方法,作為接收到請(qǐng)求數(shù)據(jù)的回調(diào)方法。HTYP異步請(qǐng)求的代碼如下所示:
4數(shù)據(jù)解析與存取
系統(tǒng)中學(xué)校固定資產(chǎn)數(shù)據(jù)信息的總體結(jié)構(gòu)如圖3所示。
通信過(guò)程中的設(shè)備信息使用可擴(kuò)展標(biāo)記語(yǔ)言XML進(jìn)行結(jié)構(gòu)化處理,如下XML就是對(duì)學(xué)校中所有設(shè)備存放位信息的包裝:
Android手機(jī)端對(duì)XML信息的解析采用dom4j庫(kù)來(lái)實(shí)現(xiàn)。dom4i是一套非常優(yōu)秀的Java開源API,主要用于讀寫xml文檔,具有性能優(yōu)異、功能強(qiáng)大、和方便使用等諸多的特點(diǎn)。
服務(wù)器端的固定資產(chǎn)信息存儲(chǔ)于Microsoft SQL Server2005中。使用JavaEE開發(fā)了一套B/S模式的固定資產(chǎn)管理系統(tǒng),用于在PC機(jī)上對(duì)學(xué)校固定資產(chǎn)信息進(jìn)行維護(hù)。
Android手機(jī)端有兩種工作模式:在線模式和離線模式。在線模式需要在工作時(shí)與服務(wù)器端保持無(wú)線網(wǎng)絡(luò)連接。而離線模式可以在沒有無(wú)線網(wǎng)絡(luò)連接的狀態(tài)下繼續(xù)工作。這就需要手機(jī)端在有網(wǎng)絡(luò)的情況下提前將固定資產(chǎn)信息下載到手機(jī)中。Android手機(jī)端使用嵌入式數(shù)據(jù)庫(kù)SQLite存儲(chǔ)固定資產(chǎn)信息。