基于A(yíng)ndroid平臺移動(dòng)導航定位的研究與設計
摘要:隨著(zhù)無(wú)線(xiàn)網(wǎng)絡(luò )技術(shù)的發(fā)展和Android平臺移動(dòng)智能終端的普及,各具特色的基于位置的服務(wù)應用接踵而至。由于全球定位系統GPS應用領(lǐng)域的不斷延伸和擴展,傳統的LBS僅限于單方位置信息呈現,已不能滿(mǎn)足人們日益增長(cháng)的社交網(wǎng)絡(luò )需求,實(shí)現移動(dòng)導航定位具有現實(shí)的意義,開(kāi)發(fā)基于Android平臺的LBS具有巨大潛力。本文提出一種新的LBS應用場(chǎng)景——移動(dòng)導航定位,并結合Android平臺應用程序開(kāi)發(fā)的特點(diǎn)及結合百度Map API,借簽C/S軟件設計模式設計一款方便實(shí)用的移動(dòng)導航定位應用系統。
本文引用地址:http://dyxdggzs.com/article/201609/305046.htm引言
隨著(zhù)Android平臺的智能終端走進(jìn)了越來(lái)越多人的生活,基于位置服務(wù)(LBS)無(wú)疑是移動(dòng)業(yè)務(wù)領(lǐng)域的一個(gè)重要組成部分。隨著(zhù)世界經(jīng)濟的發(fā)展,我們逐漸生活在一個(gè)高樓大廈和如蜘蛛網(wǎng)般道路所建立的“水泥森林”當中,在這“水泥森林”里要面臨大量標志和規則在一個(gè)陌生的城市或城市的陌生街道里,即使知道目的地的位置,也會(huì )被大量的道路標志和規則所攪亂,能否有一種方法來(lái)隨時(shí)導引我們向正確的方向前進(jìn)呢?為了方便外出,少花時(shí)間找路、問(wèn)人以及更及時(shí)地關(guān)注物流相關(guān)動(dòng)態(tài),研究基于A(yíng)ndroid系統移動(dòng)終端的導航定位技術(shù)就有了很好的應用前景。
當前基于位置服務(wù)的發(fā)展方向正趨向于個(gè)性化和本地化,不同的人群對基于位置的服務(wù)的功能和性能等方面都有不同的需求。目前提供導航服務(wù)的系統只是人與物或者物與物之間的導航,對于日常生活中兩個(gè)或者多個(gè)好友在一個(gè)陌生的城市,因為不熟悉彼此找不到或者容易走錯路導致不能見(jiàn)面,以及動(dòng)態(tài)了解物流動(dòng)態(tài)所在的位置的相關(guān)軟件還沒(méi)有出現,本文基于A(yíng)ndroid平臺結合百度Map API相關(guān)功能設計實(shí)現一款移動(dòng)導航定位服務(wù)系統,從而為用戶(hù)提供功能更加方便、界面更加友好的移動(dòng)導航定位服務(wù)。
1 系統設計方案
本文采用典型的C/S設計模式即客戶(hù)端和服務(wù)器結構,提出了一種更輕巧、簡(jiǎn)便的系統設計方案,如圖1所示??蛻?hù)端安裝相應的應用軟件,遠程服務(wù)器存儲數據,客戶(hù)端向服務(wù)器請求服務(wù),服務(wù)器向客戶(hù)端提供服務(wù)。以電子地圖為基礎,集成用戶(hù)位置需求,綜合利用無(wú)線(xiàn)通信網(wǎng)絡(luò )(TD—SCDMA/LTE)、有線(xiàn)網(wǎng)絡(luò )的優(yōu)勢,實(shí)現多方用戶(hù)移動(dòng)導航定位。
利用百度Map API技術(shù)構建位置服務(wù)系統,通過(guò)采用服務(wù)器、數據服務(wù)器、客戶(hù)端三層結構來(lái)設計??蛻?hù)端主要實(shí)現的功能包括地圖基本功能操作,包括加載地圖、瀏覽地圖、地圖縮放、POI查詢(xún)及移動(dòng)導航定位地圖顯示。服務(wù)器用主要于處理客戶(hù)端注冊、驗證登陸、服務(wù)查詢(xún)請求并響應,利用Map API將移動(dòng)位置地理信息顯示地圖上。數據服務(wù)器主要被服務(wù)器存取用戶(hù)信息和各種空間數據。該系統運行穩定,成本低,具有理論的可行性和實(shí)際的可用性。

2 關(guān)鍵技術(shù)研究
2.1 Android平臺及應用開(kāi)發(fā)
Android是一個(gè)由Linux+Java構成的移動(dòng)設備軟件框架,它包括一個(gè)操作系統、中間件和一些關(guān)鍵應用。采用了分層的架構,如圖2所示。從架構圖看,Android分為4層,分別是應用程序層、應用程序框架層、系統運行庫層和Linux核心層,具有平臺標準化、用戶(hù)可定制以及服務(wù)免費等特色。
Android程序的載體是各個(gè)應用程序包,而程序運行的主體是各種“組件”。從應用程序的角度,各個(gè)組件對外的聯(lián)系是程序處理的一個(gè)關(guān)鍵問(wèn)題,組件接口包括與用戶(hù)的接口和與其他包的接口兩部分內容。Android的應用程序是用Java語(yǔ)言開(kāi)發(fā)的,其編程語(yǔ)言完全開(kāi)源免費,基于此平臺,對此系統進(jìn)行開(kāi)發(fā)設計。
2.2 GPS定位技術(shù)
移動(dòng)終端的定位是通過(guò)檢測移動(dòng)終端和基站之間傳播信號的特征參數來(lái)獲取幾何位置,再根據移動(dòng)終端定位進(jìn)行定位估計位置。GPS全球定位系統是由美國國防部在20世紀70年代開(kāi)始聯(lián)合研制的新型衛星導航系統,由24顆定位衛星組成,所有衛星分布比較獨特,軌道高,兼具測時(shí)和測距的功能。GPS全球定位系統實(shí)現了全球覆蓋,各種氣象條件下的全天候工作,定位精度高,定位導航可實(shí)時(shí)連續。定位衛星的這種分布便于需要導航的設備在全球的任意地點(diǎn)、任意時(shí)間都可同時(shí)觀(guān)測到4顆以上的通信衛星,并能保持良好的定位解算精度。今天的智能手機平臺大多都配備了全功能的GPS接收機及配套應用,根據高速運動(dòng)的衛星瞬間位置作為已知的數據,采用空間距離后方交會(huì )的方法,確定待測點(diǎn)的準確位置。
2.3 百度地圖API
百度地圖API針對移動(dòng)終端特別開(kāi)發(fā)出百度地圖移動(dòng)版API,百度移動(dòng)地圖API是基于移動(dòng)互聯(lián)網(wǎng)設備的應用程序接口,支持Android平臺。與此同時(shí),移動(dòng)地圖免費對外開(kāi)放地圖SDK和定位SDK API,若需要在同一個(gè)工程中同時(shí)使用地圖SDK和定位SDK,需先申請同一個(gè)key,接口使用無(wú)次數限制。
地圖SDK是一套基于A(yíng)ndroid平臺的應用程序接口,可以使用該套SDK開(kāi)發(fā)適用于A(yíng)ndroid系統移動(dòng)設備的地圖應用,通過(guò)調用地圖SDK接口,可以輕松訪(fǎng)問(wèn)百度移動(dòng)地圖服務(wù)和數據,構建功能豐富、交互性強的地圖類(lèi)應用程序。同時(shí)百度移動(dòng)地圖定位SDK是一個(gè)提供基礎定位API的第三方平臺,為各類(lèi)應用提供定位能力,提升用戶(hù)體驗。通過(guò)移動(dòng)地圖API,用戶(hù)可以再移動(dòng)終端上便捷、輕松、準確地訪(fǎng)問(wèn)百度地圖服務(wù)和數據。地圖定位原理如圖3所示。

百度移動(dòng)地圖采用GPS、基站、Wi—Fi信號進(jìn)行定位。當應用程序向SDK發(fā)起服務(wù)請求時(shí),SDK會(huì )根據應用的客觀(guān)因素(GPS、基站、Wi—Fi信號)的實(shí)際情況(如是否開(kāi)啟GPS、是否連接網(wǎng)絡(luò )、是否有信號等)來(lái)生成相應地理信息依據進(jìn)行響應。
3 系統的功能設計
本文的研究目的是實(shí)現好友共享地理信息的移動(dòng)導航定位系統,通過(guò)后臺的推送服務(wù),更新并發(fā)送給其好友,并在客戶(hù)端上通過(guò)百度Map上顯示出來(lái)。只要用一個(gè)賬號和密碼登陸,使用者就匹配數據庫相關(guān)數據就可以加載好友列表,并進(jìn)行位置共享進(jìn)而實(shí)現移動(dòng)導航功能,系統整體功能架構如圖4所示。
評論