蔡凱文

摘 要:在這個智能手機被大家廣泛應用的時代,智能手機甚至能夠替代龐大的計算機來完成工作。本論文旨在設計實現手機導航系統,系統是基于Android操作系統,結合百度地圖API和Dijkstra算法,利用Java語言實現的。本系統利用百度地圖 API 接口和Dijkstra算法設計開發一個提供在線定位、導航和生活信息的導航系統軟件。該軟件具有用戶界面良好、反應速度快和用戶體驗出色等特點。
關鍵詞:手機校園;Android開發;手機導航
手機導航(英文名稱:Mobile Navigation)是通過智能手機進行導航的一個程序軟件,把用戶從目前所在的地方帶到另一個用戶想要到達的地方。校園導航系統是專門針對學生,老師,新生家長,對校園不熟的人而做的一個系統,開發的是一種以管理為基礎的地圖導航系統,它涵蓋校園地圖管理服務的眾多環節,將以前的原始地圖查詢方式改為現在的先進的智能查詢模式。
現在高校人數和高校數量漸漸增多,而且高校面積一般都比較大,導致許多新來的來訪者想要到達目的地,需要比較麻煩和繁瑣的詢問,設計手機校園導航系統利于來訪者更加快速的到達的目的地,這就減少了來訪者的麻煩,同時對高校新生來到新的環境提供了優良的指路明燈。所以,設計校園導航對來訪者和高校新生有重要的意義。
1 百度地圖API
百度地圖API是百度公司免費提供給開發人員的地圖調用接口,因為百度地圖API免費開發,現如今受到廣泛開發人員的歡迎,調用百度地圖API接口的應用程序實現了定位、地圖顯示等功能,本論文主要利用API顯示地圖的形式,通過校園導航系統給用戶展示地圖。
2 開發環境搭建
校園導航系統是基于Android的應用開發,本次開發是采用eclipse工具,eclipse使用就需要配置Java環境,首先需要安裝Java jdk、Android sdk、安裝eclipse集成開發環境、安裝Android開發工具ADT、設置ADT。
3 Dijkstra算法
迪杰斯特拉算法是由荷蘭計算機科學家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法。是從一個頂點到其余各頂點的最短路徑算法,解決的是有向圖中最短路徑問題。迪杰斯特拉算法主要特點是以起始點為中心向外層層擴展,直到擴展到終點為止。
本文將導航系統分為以下幾個功能模塊:
1)當前位置定位模塊:定位模塊通過手機無線網絡當前所在位置利用基站定位,定位到手機當前位置,使用戶的位置信息顯示在手機上的地圖。
2)步行路徑規劃模塊:在導航規劃中輸入起點和終點,選擇步行出行方式,在校園導航系統步行路徑規劃模塊中,規劃出步行最優路徑。
3)自駕路徑規劃模塊:在導航中輸入起點和終點,選擇駕車出行方式,在校園導航系統駕車路徑規劃模塊中,規劃出自駕最優路徑。
4)自行車路徑規劃模塊:在導航中輸入起點和終點,選擇自行車出行方式,在校園導航系統自行車路徑規劃模塊中,規劃出自行車出行的最優路徑。
5)路徑導航跟蹤模塊:在導航過程中,用戶可以根據導航路線跟蹤模塊進行導航,導航系統給出導航路線上所經過的點和方向的選擇。
6)周邊服務信息模塊:校園導航系統中對校園周邊服務信息進行搜索,主要包括美食、酒店、公交站、醫院等等。
7)最短路徑算法模塊:主要針對我校的導航,在校園導航離線時,手機具有我校地圖,在沒有無線網絡的情況下,校園導航系統采用Dijkstra算法,實現最短路徑導航規劃。
其功能模塊圖如圖1所示:
設計校園導航系統中主要針對校園特色性進行設計,使用戶更加了解校園內部的環境與布局。現在Android手機續航問題一直是人們的詬病,在校園導航系統的功耗上,應減少其功耗問題,使用戶達到更好的續航;在系統運行速度上,應優化系統,使校園導航系統運行更加流暢和穩定。
參考文獻:
[1] 代敏.基于Android平臺下手機定位程序的設計及實現[J].計算機與數字工程,2012.
[2] 田森,李大和.用 Android 開發手機應用[M].北京:北京希望電子出版社,2008:24-28.
[3] 余志龍,陳昱勛,鄭名杰,等.Android SDK 開發范例大全[M].北京:人民郵電出版社,2009.