• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Android的城軌交通養(yǎng)護(hù)維修普查信息采集平臺研究

      2012-08-06 09:38:06鐘新斌張振江
      關(guān)鍵詞:普查數(shù)據(jù)包客戶端

      鐘新斌,劉 云,張振江

      (北京交通大學(xué)通信與信息系統(tǒng)北京市重點(diǎn)實(shí)驗(yàn)室,北京100044)

      城市軌道交通建設(shè)的飛速發(fā)展,給城市生活帶來了巨大的便利,同時(shí)也給城市軌道交通基礎(chǔ)設(shè)施的日常養(yǎng)護(hù)維修普查工作帶來了不小的挑戰(zhàn)。針對傳統(tǒng)普查方式存在的不足,本文設(shè)計(jì)了一種基于Android平臺的城市軌道交通養(yǎng)護(hù)維修普查信息采集平臺,該平臺允許普查工作人員使用支持android應(yīng)用的手機(jī)等便攜式移動設(shè)備,隨時(shí)隨地記錄各類普查數(shù)據(jù),并在特定條件下安全可靠地將普查數(shù)據(jù)上傳到普查信息系統(tǒng)中,提高普查工作效率。

      1 信息采集平臺總體框架

      1.1 平臺總體設(shè)計(jì)

      平臺的主要設(shè)計(jì)思路是在現(xiàn)有養(yǎng)護(hù)維修普查信息系統(tǒng)的基礎(chǔ)上,增加一個(gè)基于Android操作系統(tǒng)的普查信息采集客戶端,該普查客戶端可以靈活地安裝在支持Android應(yīng)用的手機(jī)等便攜式移動設(shè)備中,并可以和部署在遠(yuǎn)端Internet上的服務(wù)器交互通信,如圖1。

      圖1 平臺總體設(shè)計(jì)框圖

      普查客戶端的前端GUI信息錄入模塊,用于給普查人員提供友好的普查信息錄入界面;數(shù)據(jù)存取接口用于保存和維護(hù)各類普查信息;數(shù)據(jù)包封裝模塊用于將各類普查信息封裝成統(tǒng)一格式的數(shù)據(jù)包,便于傳輸和推送;編碼壓縮用于保證數(shù)據(jù)包推送的可靠性和有效性;客戶端配置單元可以獲取并更新從普查服務(wù)器端下發(fā)的配置信息;基于WIFI、GPRS和3G網(wǎng)絡(luò),Client和Server通過通信組件實(shí)現(xiàn)交互,完成配置參數(shù)下發(fā)和數(shù)據(jù)推送功能。

      1.2 平臺工作流程

      普查信息采集平臺主要實(shí)現(xiàn)將普查信息推送到服務(wù)器(普查信息系統(tǒng))。要實(shí)現(xiàn)數(shù)據(jù)的準(zhǔn)確、高效的提交需要普查客戶端和服務(wù)器的有機(jī)配合。針對平臺特點(diǎn),其工作流程如圖2。

      圖2 平臺工作流程

      用戶在經(jīng)過1和2過程成功開啟普查客戶端應(yīng)用后,經(jīng)過過程3可以啟動普查客戶端后臺服務(wù),該服務(wù)可以定時(shí)檢查手機(jī)網(wǎng)絡(luò)狀態(tài)、內(nèi)存和最新的普查數(shù)據(jù)保存情況。當(dāng)更新周期到達(dá)時(shí),經(jīng)過4和5獲取從服務(wù)器下發(fā)的最新配置參數(shù),完成平臺設(shè)定。

      普查人員可以通過觸摸屏、手機(jī)鍵盤等方式填寫特定時(shí)間、特定位置和特定普查對象的普查信息,這些信息通過數(shù)據(jù)接口保存在Android平臺內(nèi)嵌的SQLite數(shù)據(jù)庫中[1]。

      當(dāng)后臺服務(wù)監(jiān)聽到數(shù)據(jù)需要推送時(shí),比如數(shù)據(jù)記錄到達(dá)一定數(shù)量,手機(jī)內(nèi)存空間不足,或用戶手動提交等,此時(shí)會啟動數(shù)據(jù)推送功能,普查客戶端將普查數(shù)據(jù)按一定的方式進(jìn)行統(tǒng)一的組織,經(jīng)過一定的壓縮和編碼,在網(wǎng)絡(luò)環(huán)境和服務(wù)器就緒的情況下將數(shù)據(jù)提交到普查服務(wù)器端。

      普查服務(wù)器接收到普查客戶端提交的數(shù)據(jù)后,進(jìn)行解碼和解壓,進(jìn)一步拆封數(shù)據(jù)包,將普查信息存入數(shù)據(jù)庫中,同時(shí)給客戶端反饋狀態(tài)碼 。

      普查客戶端從服務(wù)器端獲取正確的反饋狀態(tài)碼后,可以繼續(xù)發(fā)送下一個(gè)數(shù)據(jù)包,否則重新發(fā)送。

      2 平臺關(guān)鍵技術(shù)研究

      2.1 數(shù)據(jù)包封裝

      在移動環(huán)境下,通常受到帶寬和網(wǎng)絡(luò)流量的限制,普查客戶端要將普查數(shù)據(jù)高效可靠地上傳到普查服務(wù)器中,需要對暫存在Android移動設(shè)備中的數(shù)據(jù)進(jìn)行很好的封裝。平臺對普查數(shù)據(jù)的封裝過程如下:

      圖3 數(shù)據(jù)封裝過程

      JSON(JavaScript Object Notation)和XML(Extensible Markup Language)是目前最常用的2種數(shù)據(jù)傳輸格式[2]。與XML格式相比,JSON作為輕量級的數(shù)據(jù)傳輸格式,它基于文本,易于閱讀和編碼,同時(shí)更加節(jié)省計(jì)算資源,減少網(wǎng)絡(luò)傳輸流量,加快網(wǎng)絡(luò)傳輸。Android平臺的org.json包提供了對JSON格式數(shù)據(jù)的序列化和反序列化的支持。此外,為了進(jìn)一步提高平臺的數(shù)據(jù)傳輸效率,減少網(wǎng)絡(luò)傳輸流量。平臺還對JSON格式的數(shù)據(jù)采用ZIP算法進(jìn)行了壓縮處理。

      普查數(shù)據(jù)經(jīng)ZIP 壓縮后,JSON格式的文本數(shù)據(jù)轉(zhuǎn)換成壓縮后的二進(jìn)制數(shù)據(jù)格式,這類數(shù)據(jù)的高效、無損的傳輸和表示是采集平臺需要考慮的問題。為了便于二進(jìn)制文件的傳輸,需對ZIP壓縮后數(shù)據(jù)采用一種映射方式將二進(jìn)制文件映射成文本數(shù)據(jù)再進(jìn)行傳輸和處理,本平臺采用Base64編碼技術(shù)實(shí)現(xiàn)映射。Base64編碼MIME規(guī)定的一種編碼格式,其通過64個(gè)ASCII字符碼對二進(jìn)制數(shù)據(jù)進(jìn)行重新編碼組合[3],特別適合在http傳輸中應(yīng)用。

      2.2 普查數(shù)據(jù)推送

      為了保證普查數(shù)據(jù)可以高效、可靠地推送到部署在遠(yuǎn)端Internet上的服務(wù)器中,普查客戶端需一定的機(jī)制對采集的數(shù)據(jù)進(jìn)行整合,通信雙方按一定的機(jī)制實(shí)現(xiàn)交互。本系統(tǒng)設(shè)計(jì)的數(shù)據(jù)推送流程如圖4。

      圖4 客戶端普查數(shù)據(jù)推送流程

      要將普查客戶端采集的普查數(shù)據(jù)推送到普查信息系統(tǒng)中,必須通過目前的WIFI、GPRS或是3G網(wǎng)絡(luò)。Android平臺提供Socket和HTTP等方式實(shí)現(xiàn)網(wǎng)絡(luò)通信,由于現(xiàn)有的普查信息系統(tǒng)是基于B/S結(jié)構(gòu),需要部署到Web服務(wù)器中,而設(shè)計(jì)基于socket的健壯的web服務(wù)器較為困難。在不同的網(wǎng)絡(luò)中,HTTP方式實(shí)現(xiàn)較為容易。因此平臺采用Http方式實(shí)現(xiàn)客戶端和服務(wù)端的網(wǎng)絡(luò)通信。HTTP請求包括POST和GET 2種方式。由于GET方式對傳輸?shù)臄?shù)據(jù)長度有限制,而普查數(shù)據(jù)較為龐大,因此采用POST方式上傳。

      2.3 客戶端與服務(wù)器數(shù)據(jù)傳輸?shù)陌踩珯C(jī)制

      為了保證普查客戶端和服務(wù)端的安全通信,特別是保證傳輸數(shù)據(jù)的完整性,平臺采用基于RSA公鑰密碼體系的安全交互方式,如圖5。

      圖5 普查客戶端與服務(wù)器交互機(jī)制

      普查客戶端:

      (1)普查客戶端將原始普查數(shù)據(jù)經(jīng)JSON封裝→ZIP壓縮→Base64編碼后組成原始數(shù)據(jù)A;

      (2)數(shù)據(jù)A附加用戶標(biāo)識UA,組成數(shù)據(jù)B=A+UA,UA由(uName, pwd)組成,分別是服務(wù)器分配給客戶端的用戶名和口令;

      (3)采用算法計(jì)算數(shù)據(jù)的值v=MD5(B);

      (4)采用MD5算法計(jì)算數(shù)據(jù)B的MD5值v=MD5(B);

      (5)采用RSA加密算法,用客戶端私鑰對v加密,得到C=EPRa(v);

      (6)將數(shù)據(jù)C附加到數(shù)據(jù)B中組成完整的數(shù)據(jù)包P=B+C,將P上傳個(gè)到服務(wù)器。需要說明的是,為了保證安全,可對P進(jìn)行加密處理。

      普查服務(wù)器:

      (1)服務(wù)器獲取普查客戶端上傳的數(shù)據(jù)'P;

      (2)解析P'的數(shù)據(jù)B'和C',對B'進(jìn)行MD5雜湊計(jì)算得到MD5值v'=MD5(B'),同時(shí)對C'用RSA解密算法,用客戶端的公鑰進(jìn)行解密得到一個(gè)參數(shù)v''=Dpua(C');

      (3)比較v'與v'',如果相同,說明數(shù)據(jù)包在傳輸過程中沒有被篡改。否則,丟棄該數(shù)據(jù);

      (4)從B'中獲取A'和UA',系統(tǒng)對UA'中的用戶進(jìn)行驗(yàn)證,驗(yàn)證通過后可以將A'中的數(shù)據(jù)經(jīng)Base64解碼→ZIP解壓縮→JSON解析過程得到普查數(shù)據(jù)并存入數(shù)據(jù)庫中,否則丟棄該組數(shù)據(jù)。

      3 結(jié)束語

      基于Android平臺的城市軌道交通養(yǎng)護(hù)維修普查信息采集平臺,有效解決了普查數(shù)據(jù)的二次錄入問題,節(jié)約了大量人力物力,加速了城市軌道交通信息化的建設(shè)。本系統(tǒng)雖然對基本的普查信息采集方面效果明顯,但在對圖片特別是多媒體(視頻等)普查數(shù)據(jù)支持方面有待進(jìn)一步改善。

      [1] 勒巖,姚尚明. Google Android 開發(fā)入門與實(shí)戰(zhàn)[M] . 北京:人民郵電出版社.

      [2] Guanhua Wang. Improving Data Transmission in Web Applications via the Translation between XML and JSON.Communications and Mobile Computing (CMC), 2011, 182-185.

      [3] Shirali-Shahreza, M.; Shirali-Shahreza, S.Sending pictures by SMS. Advanced Communication Technology, 2009, 222-223.

      [4] Reto Meier. Professional Android 2 Application Development[M] . Indianapolis:Wiley publishing Inc, 2011.

      猜你喜歡
      普查數(shù)據(jù)包客戶端
      立即全面普查 警惕二代粘蟲發(fā)生
      胡春華強(qiáng)調(diào):確保脫貧攻堅(jiān)普查取得圓滿成功
      SmartSniff
      縣級臺在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
      傳媒評論(2018年4期)2018-06-27 08:20:24
      孵化垂直頻道:新聞客戶端新策略
      傳媒評論(2018年4期)2018-06-27 08:20:16
      基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
      電子測試(2018年10期)2018-06-26 05:53:34
      關(guān)于農(nóng)業(yè)文化遺產(chǎn)普查與保護(hù)的思考
      學(xué)習(xí)調(diào)查要“四會”
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      乌兰县| 丽江市| 丽水市| 鹿邑县| 沁源县| 乐陵市| 大理市| 江北区| 始兴县| 湘西| 正镶白旗| 嘉鱼县| 廉江市| 将乐县| 徐汇区| 东平县| 延川县| 西峡县| 呼伦贝尔市| 大宁县| 三门峡市| 麦盖提县| 安乡县| 龙南县| 普兰店市| 永寿县| 新沂市| 海阳市| 华亭县| 盐山县| 衢州市| 宁远县| 和政县| 邻水| 图们市| 麦盖提县| 尉氏县| 京山县| 丰县| 玛沁县| 建昌县|