999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于百度地圖的“樂游”軟件設計與實現?

2016-02-05 10:03:09王文強王宏亮蔡朝陽
微處理機 2016年6期
關鍵詞:百度旅游功能

王文強,王宏亮,蔡朝陽

(遼寧石油化工大學計算機與通信工程學院,撫順113001)

基于百度地圖的“樂游”軟件設計與實現?

王文強,王宏亮,蔡朝陽

(遼寧石油化工大學計算機與通信工程學院,撫順113001)

隨著人民生活水平的提高,自助旅游受到越來越多的關注。自助旅游需要對行程進行詳細的規劃,掌握路徑、景點、天氣、周邊環境等信息,并隨時獲得導航幫助以及查詢旅游進度、記錄旅游感悟,以此保障旅游的品質。面向自助旅游專門設計了一款基于百度地圖的“樂游”APP以滿足用戶的出行需要。該APP應用于android平臺,集成路徑規劃、路徑沿途天氣查詢、導航、軌跡追蹤以及游客周邊興趣點查詢等為一體,并且提供本地收藏功能,采用xml技術解析數據,對于用戶上傳的圖片信息采用記錄地址方式進行存儲,避免緩存圖片過多而形成數據冗余。

百度地圖;APP應用;路徑規劃;軌跡追蹤;興趣點查詢;感悟收藏

1 引 言

自助旅游是當下新興起的一種旅游方式,人們自己設計路線,自己安排旅途中的一切,自由、主動,行程中旅游感悟深刻,充滿艱辛而又富于詩情畫意。但是自助旅游中所涉及的吃、住、行、游、購、娛,所有事情全由自己安排,操作起來比較繁瑣,只有借助現代科技帶來的便捷,才能保證行程的圓滿。

隨著社會發展,目前全球的手機用戶數量已經超過了PC機的數量,而且手機數量正在快速增長,其中智能手機所占的比例越來越大[1]。智能手機及其應用已經成為了人們身邊不可或缺的一部分,特別是Android平臺借助于其開源免費,兼容性強等優點迅速占領了移動平臺市場的最大份額[2]。基于Android平臺的開發已經成為開發者們重點關注的領域[3-4]。各種地圖搜索引擎(百度地圖,高德地圖)雖然已經可以在多方面支持自助旅游,但是由于面向的游客過于龐大,針對旅行的專題較少,信息比較概略,難以充分表達旅游的專題信息,因此產生了基于地圖專門服務于自助旅游的集成APP的需求。

百度地圖API號稱永久免費,提供了面向游客定制個性化服務的功能,為實現旅游專題信息檢索和地圖服務創造了便捷[5],因此專門針對自助旅游愛好者開發了“樂游”軟件,為自助出游提供所需的必要幫助。

2 百度地圖API簡介

百度地圖API是一套為開發者免費提供的應用程序接口,包括JavaScript,ios,Android,其中百度地圖Android SDK適用于Android2.1及其以上版本設備。開發者可以使用SDK開發適用于Android系統移動設備的地圖功能,通過調用地圖SDK可以訪問百度地圖服務和數據,構建功能豐富、交互性強的百度地圖應用程序。百度地圖Android定位SDK是為Android移動端應用提供的一套簡單易用的LBS定位服務接口,專注于為廣大開發者提供最好的綜合定位服務,通過使用百度定位SDK,開發者可以輕松為應用程序實現智能、精準、高效的定位功能[6]。

3 系統設計

綜合考察自助出游游客的需求,設計“樂游”APP其功能結構如圖1所示,功能模塊包括:

1.路徑規劃與跟蹤。在百度地圖提供的技術支持基礎上進行二次開發,提供自助出游游客旅游路徑規劃、導航功能并實時定位與追蹤旅游進度。

2.旅游小憩功能。面向游客旅游感悟,記錄旅游心得與評價,保存旅游沿途珍貴照片,同時方便游客查看、修改。

3.興趣點管理功能。通過熱力地圖實現周邊興趣點查詢,以及興趣點周邊的天氣情況查詢,方便游客了解周邊的旅游景點情況并導航出行。

圖1 “樂游”APP系統功能結構圖

系統設計基于Android平臺,利用Android SDK提供的功能支持與百度地圖數據庫服務器進行數據通信,系統架構見圖2所示。

圖2 基于百度地圖的APP系統架構

采用GPS、WIFI、基站、IP混合定位模式,借助Android定位SDK獲取定位信息,通過地理編碼將地球表面的地址坐標轉換為標準地址,實現對于游客位置的定位,在此基礎上調用百度地圖API實現游客所需功能服務。

4 系統實現

4.1 定位技術

綜合定位功能指的是根據游客實際需求,返回游客當前所處位置的基礎定位服務,“樂游”軟件定位功能運行效果如圖3所示。

創建定位服務步驟如下:

1.初始化LocationClient類,在onCreatea方法中獲取LocationClient并為其添加注冊監聽函數。

2.配置定位SDK參數,設置定位模式(LocationMode),設置坐標類型,設置是否允許模擬GPS,設置是否需要POI結果等。

3.實現BDLocationListener接口。重寫on ReceiveLocation(BDLocation location)方法,用于定位請求回調函數(其中BDLocation表示定位結果),接收異步返回的定位結果。

4.開始定位:調用start()方法。

圖3 “樂游”APP定位服務

4.2 路徑規劃與導航

用于滿足游客出行前旅游線路規劃的需求。百度地圖導航SDK的代碼Jar包由Java源代碼編譯打包而成,具有路徑規劃和導航、自定義圖層,語音播報等功能。資源Jar包由導航所需的配置數據、基礎數據以及導航功能所需的布局、字符串等資源打包而成。So動態庫是由native代碼編譯而成,主要實現地圖導航、路線規劃等功能[7]。軟件運行效果如圖4所示。

圖4 “樂游”APP路徑規劃與導航

設計借助百度地圖路徑規劃與導航SDK代碼包實現:

1.創建一個Activity繼承Activity并實現On-MapClickListener和OnGetRoutePlanResultListener接口。

2.獲取游客輸入的地址信息,并初始化地圖控件。

3.創建一個RoutePlanSearch對象,添加設置路線檢索監聽者(setOnGetRoutePlanResultListener(OnGetRoutePlanResultListener listener))。

4.獲取游客選擇的路徑規劃方式(駕車,公交或步行)并向RoutePlanSearch實例添加設置出行方式。路徑規劃成功后,通過route.getAllStep()獲取Object對象數據,并根據出行方式(判定Object對象是那個類型的子對象)獲取百度地圖提供的出行路線。

5.導航(部分代碼)

4.3 路徑沿途天氣查詢

考慮到旅游過程中天氣因素對用戶出行的影響,為了讓用戶有更加良好的旅游感悟,提供了天氣查詢功能。該功能為用戶提供天氣查詢服務,讓用戶在使用過程中即時了解天氣的變化,提前做好應對工作,方便用戶出行需求。軟件運行效果如圖5所示。

實現過程:

1.利用百度地圖API建立一張地圖,展現中國全貌。

2.利用地圖API提供的本地搜索功能,根據提供的城市名稱搜索所處位置并在地圖上進行標記。

3.在各城市標記點上設計彈出窗口來顯示天氣信息。天氣信息的獲取則通過php腳本直接對百度的各城市天氣搜索頁面進行天氣信息的抓取。

4.解析網頁信息,將網頁信息存放在android頁面中。

圖5 “樂游”APP天氣查詢

4.4 興趣點查詢

游客出行存在興趣偏好,通過用戶輸入偏好的關鍵字查詢,為用戶展示周邊存在的興趣點,方便用戶的旅游規劃,以及行程中了解周邊旅游資源的分布。軟件運行效果如圖6所示。

圖6 “樂游”APP興趣點查詢

具體實現如下:

1.調用定位功能,獲取當前地點信息。

2.實例化一個PoiSearch類對象,并向該對象設置poi檢索監聽者setOnGetPoiSearchResultListener(OnGetPoiSearchResultListener listener)。

3.創建SuggestionSearch對象,同樣設置監聽器。

4.監聽游客點擊的按鈕,并在OnClick方法中搜索周邊景區興趣點,其中city和place都是以字符串形式傳遞過來,實行周邊興趣點檢索。核心代碼如下:

mPoiSearch=PoiSearch.new Instance();//創建POI檢索實例。

4.5 熱力地圖查詢

游客在旅游路途中有景點熱度查詢需求,熱力地圖查詢為游客提供周邊景點熱度信息。百度地圖熱力圖是用不同顏色的區塊疊加在地圖上實時描述人群分布、密度和變化趨勢的一個產品,是基于百度大數據的一個便民出行服務。系統調用百度地圖api客觀的反應旅游區的熱門程度,以及人流量,方便游客提前做好規劃。軟件運行效果如圖7所示。

圖7 “樂游”APP熱力地圖查詢

實現步驟包括:

1.創建一個Handle對象,并在對象中實現handleMessage()方法。

2.創建一個Thread對象,并覆蓋線程當中的run方法,在run()方法中實例化heartMap,將游客的位置信息放入一個list對象當中。

3.調用該線程的start()方法 。發送一個empty消息。

4.游客信息用于接收Json消息,并將Json消息放到一個list集合中。在OnPause方法中,將地圖功能暫停,在OnResume方法中恢復地圖控件的使用。

4.6 軌跡追蹤

滿足游客旅游過程中隨時掌握當前旅游定位以及行程進度的需求,軟件運行效果如圖8所示。

圖8 “樂游”APP軌跡追蹤

實現過程由四步完成:

1.實例化軌跡服務客戶端,同時創建鷹眼服務Id。

LBSTraceClient client=new LBSTraceClient(getApplicationContext());

2.實例化軌跡服務,創建一個Trace對象開啟軌跡服務回調接口arg0:消息編碼,arg1軌跡服務推送接口用于接收服務端推送消息,arg0:消息類型,arg1:消息內容,復寫onTraceCallback()和on TracePushCallback()方法。

3.開啟軌跡追蹤,并調用繪制軌跡。

client.startTrace(trace,startTraceListener);

4.結束軌跡追蹤服務。

創建一個OnStopTraceList接口類型的對象,并復寫其中的onStopTraceSuccess()方法和on-StopTraceFailed()方法,在客戶端調用stopTrace(trace stopTraceListener)方法。

其中繪制軌跡核心代碼如下:

4.7 旅游感悟收藏

采用xml存儲數據,側重于本地實現。在沒有消耗數據流量的基礎上,保存游客的旅游心得以及圖片信息,并加以管理,打造游客自己的專屬功能。軟件運行效果如圖9所示。

圖9 “樂游”APP旅游感悟收藏

系統采取xml文件方式保存游客感悟及照片,采用XmlSerializer和XmlPullParser對xml文件進行解析和創建修改[8],獲取游客在手機上存放的信息,通過游客的點擊事件實現游客需要的上傳、瀏覽和管理功能。

具體實現步驟包括:

1.為游客上傳部件添加事件監聽器,在Onclick()方法中添加用戶上傳事件。

2.獲取游客的位置信息,通過DBLocation對象的getAddrStr()方法,獲取用戶的位置信息。

3.接收游客的旅游箴言以及上傳圖片的src地址,并將src通過特殊符號進行連接,使之形成一個字符串,該字符串用于存儲用戶的上傳圖片地址。在瀏覽用戶旅游感悟時,獲取該字符串,并加以切割,以便展示用戶旅游感悟附帶的圖片信息。

4.獲取當前的時間存儲便于遍歷排序。

5.判斷存放游客信息的xml文件是否存在,若存在,就向該文件添加元素節點,若不存在就創建該文件,根據XmlPullParser提供的方法解析xml文件,添加該節點。操作成功后銷毀該Activity。

4.8 我的旅游日記管理

用戶頁面采用類似網格布局方式,圖片下方顯示游客旅游感悟,如圖10所示。

圖10 “樂游”APP旅游日記管理

實現過程:

1.查看游客信息文件是否存在,若不存在,則給出提示信息,反之,則采用XmlPullParser技術遍歷該xml文件。

2.獲取解析對象Xm lPullParser reader=XML. newPullParser()。

3.創建一個集合,將遍歷到的xm l屬性寫入集合中。

4.對游客輸入的圖片地址加以切割,得到游客文件的真實地址。

5.將游客的旅游感悟顯示在界面中。

5 結束語

“樂游”APP系統基于百度地圖API,Android平臺,結合xml技術開發而成,功能上基本滿足了自助旅游游客的行程需要。特別是個性化地定制了旅游感悟和照片的本地保存以及管理功能,打造了屬于游客出游的專屬空間。下一步,將在此應用基礎上進一步調研游客需求,添加新功能以及將已有功能進一步整合,以期實現軟件的真正實用化。

[1] 熊剛.基于Android的智能手機的設計與實現[D].武漢:武漢理工大學,2010. Xiong Gang.Design and implementation of smartmobile phone based on Android[D].Wuhan University of Technology,2010.

[2] 劉衛國,姚昱禹.Android的架構與應用開發研究[J].信息與電腦,2012(5):55-56. Liu Weiguo,Yao Yuyu.Study of Android's Architecture and Its Application Development[J].China Computer&Communication,2012,5:55-56.

[3] 楊豐盛.Android應用開發揭秘[M].北京:機械工業出版社,2010. Yang Fengsheng.Android Unleashed[M].Beijing:China Machine Press,2010.

[4] 明日科技.Android從入門到精通[M].北京:清華大學出版社,2012. Tomorrow Technology Co.,Ltd.Android from entry to themaster[M].Tsinghua University Press,2012.

[5] 王紅崧,周海晏.基于百度地圖API的旅游地理信息系統開發[J].現代計算機,2012(8):60-63. Wang Hongsong,Zhou Haiyan.Development of Tourism Geographic Information System Based on Baidu Map API[J].Modern computer,2012,8:60-63.

[6] 殷玥,劉偉,郭東恩.基于百度地圖API的房地產展示系統的實現[J].軟件導刊,2012,11(9):163-164. Yin Yue,Liu Wei,Guo Dongen.Implementation of Real Estate Trade System based on Baidu API[J].Software Guide,2012,11(9):163-164.

[7] 余志龍,陳昱勛,鄭名杰,陳小風,著.Google Android SDK開發范例大全(第3版)[M].北京:人民郵電出版社,2011. Yu Zhilong,Chen Yuxun,Zheng Mingjie,Chen Xiaofeng. Google Android SDK development paradigm(3rd Edition)[M],Beijing:Posts&Telecom Press,2011.

[8] Kathy Sierra&Bert Bates.First Head Of Java[M].北京:中國電力出版社,2007. Kathy Sierra&Bert Bates.First Head Of Java[M]. Beijing:China Electric Power Press,2007.

Design and Im p lementation of Le Tour Software Based on the Baidu Map

Wang Wenqiang,Wang Hongliang,Cai Zhaoyang
(School of Computer and communication enginering,Liaoning Shihua University,Fushun 113001,China)

With the improvement of people's living standards,the self-service travel attractsmore and more attention,which requires some information such as detailed itinerary planning,path,attractions,weather,other surrounding environment,access navigate help,query travel schedule,tourism experience record and so on.Le-Tour APP is designed to improve the quality of tourism based on the Baidumap for demands of self-service travel,which is based on Android platform and integrated with path planning,weather query along path way,navigation,trajectory tracking,tourists interest query,and provides the local collection function.XML technology is used to resolve the data and store travel tips and photos by recording picture address storage to prevent data redundancy because of too much memory and the formation.

Baidu map;APP Application;Route plan;Trajectory tracking;Point of interest query;Sentiment collection

10.3969/j.issn.1002-2279.2016.06.010

TP311.1

A

1002-2279(2016)06-0038-06

遼寧省教育廳資助科研項目(L2014153)

王文強(1994-),男,湖北省仙桃市人,遼寧石油化工大學本科生,主研方向:軟件工程等。

王宏亮(1971-),男,遼寧省撫順市人,副教授,主研方向:計算機集成制造、軟件工程。

2016-04-26

猜你喜歡
百度旅游功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Robust adaptive UKF based on SVR for inertial based integrated navigation
百度年度熱搜榜
青年與社會(2018年2期)2018-01-25 15:37:06
關于非首都功能疏解的幾點思考
旅游
百度遭投行下調評級
IT時代周刊(2015年8期)2015-11-11 05:50:22
旅游的最后一天
百度“放衛星”,有沒有可能?
太空探索(2014年4期)2014-07-19 10:08:58
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
主站蜘蛛池模板: 美美女高清毛片视频免费观看| 国产农村妇女精品一二区| 高h视频在线| 91色在线观看| 亚洲嫩模喷白浆| 国产一区成人| 国产激爽爽爽大片在线观看| 18禁高潮出水呻吟娇喘蜜芽| 小13箩利洗澡无码视频免费网站| 欧美翘臀一区二区三区| 永久免费av网站可以直接看的| 色哟哟精品无码网站在线播放视频| 人妻熟妇日韩AV在线播放| 女人18毛片水真多国产| 尤物亚洲最大AV无码网站| 国产一国产一有一级毛片视频| 亚洲码一区二区三区| 美女无遮挡免费视频网站| 波多野结衣一二三| 亚洲av无码人妻| 日韩av高清无码一区二区三区| 欧美日韩国产在线播放| 色视频国产| 久久国语对白| 欧美成人在线免费| 制服丝袜一区| 国产91丝袜在线播放动漫| 亚洲成人黄色网址| 久久国产V一级毛多内射| 伊人狠狠丁香婷婷综合色| 蜜桃视频一区二区| 永久在线精品免费视频观看| 日韩精品欧美国产在线| 久草热视频在线| 国产午夜精品鲁丝片| 青青草国产在线视频| 国产精品美女网站| av在线人妻熟妇| 久久永久免费人妻精品| 国产精品九九视频| 国产自在线播放| 日韩精品免费在线视频| 久久久久九九精品影院| 91啦中文字幕| 99在线小视频| 一本大道无码日韩精品影视| 又大又硬又爽免费视频| 一级毛片在线播放免费观看| 色综合热无码热国产| 美女裸体18禁网站| 成人午夜在线播放| 米奇精品一区二区三区| 国产网站黄| 国产在线观看成人91| 四虎永久免费在线| 思思热在线视频精品| 国产精品妖精视频| 亚瑟天堂久久一区二区影院| 亚洲日韩在线满18点击进入| 欧美日本在线| 成人永久免费A∨一级在线播放| 国产成人三级在线观看视频| AV色爱天堂网| 一本大道视频精品人妻| 亚国产欧美在线人成| 亚洲大学生视频在线播放| 亚洲AV无码久久天堂| AV在线麻免费观看网站| 国产午夜精品一区二区三| 免费在线色| 国产精品第三页在线看| 亚洲美女操| 国产喷水视频| 手机成人午夜在线视频| 日本手机在线视频| 国产精品成| 欧美一级大片在线观看| 亚洲欧美日韩动漫| 福利片91| 亚洲美女一级毛片| 日本中文字幕久久网站| 亚洲综合专区|