孫國平
(沈陽市勘察測繪研究院,遼寧沈陽 110004)
基于Android的景區景點路線推薦服務研究
孫國平?
(沈陽市勘察測繪研究院,遼寧沈陽 110004)
移動空間信息服務是移動網絡、互聯網、空間信息服務、移動終端技術協同發展的產物,是一種基于位置的空間信息服務。本文從移動空間信息服務關鍵技術探討基于路線推薦服務的研究方法,設計并編程實現了一個基于特定景區景點的滿足用戶時間需求的旅游路線推薦服務軟件。該軟件基于Android平臺,使用了SQLite數據庫等多種技術,實現了基于用戶所在景點的景區概況介紹、景區風景欣賞以及根據用戶現有時間推薦最優旅游路線和到達出口的最優旅游路線推薦服務等功能。
移動互聯網;移動空間信息服務;Android;SQLite;旅游路線推薦
在移動互聯網和移動終端大發展的趨勢下,各類移動應用也在蓬勃發展,基于位置的移動應用服務更是實現了爆發式增長,微信、微博、移動閱讀、移動游戲、團購等應用,為人們的生活提供著極大的便利。自駕旅游這項人們為了休閑、娛樂、探親訪友或者為了商務目的而進行的活動,也伴隨著網絡的發展而日新月異。目前,國內市場上還不曾有針對旅游路線推薦這一特定領域的移動應用服務軟件,本文對景區內旅游路線推薦服務進行研究,以選取自主設計的特定景區景點數據庫為基礎,在Android平臺上開發出一款滿足用戶時間需求的旅游路線推薦服務軟件,讓進入該景區的用戶更加高效地利用寶貴時間,全身心享受旅游帶給他們的精神上的快樂。
2.1 Android簡介
Android是一個專為移動設備設計的軟件平臺,包括一個操作系統、中間件和一些關鍵的平臺應用程序。與其他手機操作系統相比,Android的系統內核是基于網絡性能超強的Linux,網絡性能有很大優勢,硬件平臺的適應面也更為廣闊。除此之外Google還賦予了Android豐富的Java接口;Android代碼完全開源,使用免費,可有效降低成本;Android系統支持插拔內存卡,可隨意擴展空間。
2.2 SQLite數據庫
Android自帶SQLite數據庫。SQLite是一款輕型數據庫,它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用,它占用的資源非常少,在嵌入式設備中,可能只需要幾百KB內存就夠了。它是一個非常流行的嵌入式數據庫,它支持SQL語言,并且只利用很少的內存就有很好的性能。
根據本設計的整體方案,將程序命名為“驢友路線推薦”。本程序能實現以下幾個功能:如圖1所示。①查詢景區內各景點游玩時間推薦;②查看景區內景點地理位置分布;③了解各景點的相關介紹;④各景點風采瀏覽(圖片)和百度地圖使用;⑤路線推薦需求一:向用戶推薦景區內任意兩景點間的最佳游玩路線;(最佳:時間方面)⑥路線推薦需求二:根據用戶現有時間,動態生成路線推薦數據庫,并向用戶推薦滿足用戶時間需求的同時以出口為終點的若干旅游路線及相應時間;⑦路線推薦需求三:當用戶有急事時,可向用戶推薦到達出口的最短時間旅游路線。

圖1 系統功能設計
3.1 系統實現工具及運行環境
開發工具:Eclipse、Android SDK、ADT。運行環境:操作系統:Android。
3.2 數據來源及處理
景區內各景點數據主要來源于地形圖的位置數據,部分數據為實測。經地形圖確定各景點的通達路線,計算其距離,通過距離換算為步行時間。
3.3 數據庫設計
對于本應用軟件來說,主要涉及3張表:
(1)connection_last表:用于存儲景區內各景點之間路線的互通關系及游玩時間。
(2)temp表:用于動態存儲根據用戶需求生成的數據,所以該表會被動態的清空。
(3)tzt_travel表:用于存儲景區內各景點的相關信息,包括:景點名稱、景點信息介紹等。插入數據后的表中內容如圖2所示。

圖2 插入數據后的tzt_travel表
3.4 界面設計
本設計以旅游為主題,因此在設計界面(UI)的過程中,多以綠色的用戶界面為主色調,同時根據不同的需求設計出不同的風格和布局。這里采用layout系統進行界面設計,有5種常用的布局格式,RelativeLayout、LinearLayout、FrameLayout、AbsoluteLayout、Table-Layout。其中LineLayout和RelativeLayout是最常用的格式,它們可以通過xml配置文件進行布局。在本設計里最常用的就是Button、TextView、EditView。首先給組件一個id,然后用layout_width和layout_height來設置其寬度和高度,然后還可以用textColor、textSize等其他屬性對控件進行相應的設置。本設計界面中的一部分如圖3~圖5所示。
3.5 算法設計
該應用服務軟件主要涉及的算法有兩種:
第一種是著名的Dijstra算法。Dijkstra(迪杰斯特拉)算法是典型的單源最短路徑算法,用于計算一個節點到其他所有節點的最短路徑。主要特點是以起始點為中心向外層層擴展,直到擴展到終點為止。部分代碼實現如圖6所示。

圖3 歡迎界面

圖4 主界面

圖5 各景點游玩時間推薦界面

圖6 添加路線代碼
第二種是自己設計的動態生成指定數據庫并檢索出符合需求內容的算法。首先用戶輸入現有的時間然后動態生成數據庫,如圖7所示,并查詢出符合用戶需求的推薦線路和相應需要的時間,如圖8所示。

圖7 動態生成數據庫

圖8 查詢到的可游玩信息
本應用服務軟件雖然實現了所設計的功能,但由于本人能力有限,還需以后進一步掌握復雜程序設計和開發技術,進一步繼續完善開發,從以下幾個思路進行完善:
(1)進一步研究對第三方數據庫信息的兼容問題,包括本地數據庫設計與空間數據庫訪問;
(2)進一步研究對Baidu Map API的支持,實現實時定位功能。
(3)進一步研究對于生成推薦路線樣式的展現方法,目標是動態生成可視化線路,讓展現給用戶的UI更加美觀。
[1] 王方雄,邊馥苓.從GlSystem到GIService:GISystem發展的必然趨勢[J].華中師范大學學報·自然科學版, 2004,38(4):528~532.
[2] 怡凱.基于Android的移動空間信息服務研究[D].遼寧師范大學,2009.
[3] 吳林,熊滔,蔡永香.基于Android手機的地圖應用設計與開發[J].城市勘測,2011(2):16~19.
[4] 寧安良.面向3G終端的移動地理信息服務研究[D].北京:中國海洋大學,2010.
[5] 祁曉暉,鄭滔.Mashup研究綜述[J].計算機應用,2010 (s1):203~208.
[6] 楊豐盛.Android應用開發揭秘[M].北京:機械工業出版社,2010.
[7] 陳飛翔.移動空間信息服務關鍵技術研究[D].北京:中國科學院研究生院,2006.
[8] 劉平.Android手機訪問服務器的一種數據交互方法[J].電子設計工程,2010(9):96~98,102.
[9] 孫曉宇.Android手機界面管理系統的設計與實現[D].北京:北京郵電大學,2009.
Android-Based Route Recommended Scenic Spots Services Research
Sun Guoping
(Shenyang Geotechnical Investigation&Surveying Research Institute,Shenyang 110004,China)
Mobile spatial information services for mobile networks,Internet,spatial information services,mobile terminal technology collaborative development of the product,is a location-based spatial information services.This spatial information services from the mobile key technology of route recommendation service based research methods,design and implementation of a program of scenic spots based on a specific time to meet user demand for travel routes recommended service software.The software is based on the Android platform,the use of SQLite databases and other technologies,to achieve a user-based attractions of the area where the Fact Sheet,scenic landscape to look at the time and in accordance with the user's existing recommended optimal travel routes and arrival exports optimal travel routes recommended services other functions.
mobile internet;mobile spatial information services;android;SQLite;travel routes recommended
2014—02—09
孫國平(1981—),男,工程師,注冊測繪師,主要從事測繪產品的質量檢查與驗收、地理信息系統研究等工作。