錢立
(四川職業技術學院計算機科學系,四川遂寧629000)
簡易位置信息共享系統的設計與實現
錢立
(四川職業技術學院計算機科學系,四川遂寧629000)
本文以室外團隊活動需要了解各自位置為需求,設計并實現了一個簡易的位置共享系統.借助于普遍使用的安卓移動終端GPS功能獲取定位數據,并上報給服務器端,通過服務器端頁面將多個成員的位置在百度地圖上顯示出來.顯示位置同時還可附帶一些文字消息.該系統的特點是快速、高效、安全.
LBS;位置共享;GPS;安卓
基于位置的服務L BS,是指通過電信移動運營商的無線電通訊網絡或外部定位方式,獲取移動終端用戶位置信息,在G IS平臺的支持下,為用戶提供相應服務的一種增值業務[1].它能根據位置找到相關的服務,比如賓館、飯店等.智能手機標配有G P S定位功能,團隊戶外活動時,團隊成員想要相互了解位置進行互動,變得容易實現.這種情況需要實時準確、安全可靠的共享位置信息.對于這種需求,可臨時搭建一個簡易位置信息共享系統.相對于城市中提供功能完善的位置服務來說,簡易系統易于搭建和維護,通信快捷,去掉了不必要的服務及冗余數據,顯得高效而安全.
據此,我們設計如下的簡易位置信息共享系統.
2.1 系統架構

圖1 系統架構圖
2.2 服務器端
服務器端是Web頁面,在該頁面上能接受到多個客戶端的位置信息,并調用百度地圖顯示出各客戶端的所在位置.由于客戶端是移動的,G P S數據是動態的,每隔一定時間發送位置信息,所以服務器端頁面也能動態顯示各客戶端的位置變化狀況.
2.3 安卓移動客戶端
安卓客戶端需要通過移動通信網絡訪問服務器端Web頁面,就能看到團隊中所有成員的位置情況.但首要的是自己客戶端要主動地每隔一定時間發送自己的位置信息給服務器.
該系統能完成可靠的位置共享需要幾點條件保障,一是能用移動通信網絡進行I nternet通信,二是G P S能準確迅速定位,三是必須提供一個可靠的Web瀏覽中介頁面.
2.1 位置信息數據包及處理類的設計
位置信息數據主要包括定位的經緯度、位置人、附加信息等數據,并要求將數據用某種方式加密(如M D5).所以按照面向對象設計思想設計該數據包為一個P erson L ocation類,包括了以上幾個屬性,還設計了一個加密數據的方法,如下.

2.2 百度地圖API服務器端Servlet和JS
2.2.1 獲取多個客戶端位置
服務器端為了獲取多個客戶端發送的位置信息,此處采用J S P的S ervlet組件實現.S ervlet組件運行于后臺,它接收客戶端發送的數據,并解析后存入J S P的appl ication全局變量中,關鍵代碼如下.

2.2.2 動態Web頁
由于Web頁上的位置不斷變化,用到動態Web技術,此處采用J S P實現,Web服務器采用Tomcat.使用百度地圖J S AP I根據指定城市坐標加載指定等級的地圖,各成員位置信息用百度地圖覆蓋物描繪,并可響應點擊事件顯示附帶的文字信息,代碼如下.


2.3 客戶端Android版
2.3.1 安卓智能終端S ervice服務開發
安卓系統中S ervice組件運行于后臺,其主要目的是當客戶端運行后,S ervice組件獲取定位G P S數據,并以每間隔時間發送位置信息到服務器端S ervlet組件,參考代碼如下.


2.3.2 客戶端顯示地圖
顯示地圖有兩種方式.一種不考慮流量和速度問題,可直接在客戶端瀏覽器中訪問服務器那個位置信息Web頁.另一種為節省客戶端數據流量,獲取S ervlet響應的多個成員位置信息后,可加載本地地圖,在其上描繪多個位置信息.具體實現可參考高德地圖L BS開發平臺.
在Web頁<head>標簽中加入標簽<meta ht tp-e q uiv="ref resh"content="10">,可每隔10秒自動刷新頁面,獲取最新位置信息測試如圖2.

圖2 測試效果圖
現實生活中有時在戶外進行團隊活動時,需要了解各成員的位置信息,這就需要一個位置共享系統.目前很多位置共享系統功能太過復雜,本文根據需求設計并實現了一個簡易位置共享系統,該系統搭建快速方便,訪問安全可靠.在此基礎上,還可對該平臺進行功能擴展,比如成員路徑跟蹤記錄,增加允許查看全體成員的權限,隱藏自身位置等.
[1]百度百科-L BS詞條[E B/O L].ht tp://bai k e.baidu.com.
[2]百度地圖J S AP I[E B/O L].ht tp://developer.baidu.com/ map/inde x.php.
[3](美國)J ohn R esig.精通J ava S cript[M].陳賢安,江疆,譯.北京:人民郵電出版社,2008.
[4](加)克尼亞萬.S ervlet和J S P學習指南[M].崔毅,俞哲皆,俞黎敏,譯.北京:機械工業出版社,2013.
[5]明日科技.A ndroid從入門到精通[M].北京:清華大學出版社,2012.
責任編輯:張隆輝
TP311
A
1672-2094(2015)03-0151-03
2015-03-23
錢立(1978-),男,四川遂寧人,四川職業技術學院講師,碩士.研究方向:J ava/J S P,移動應用開發A ndroid和J ava M E,數據庫應用.