• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于百度地圖的“樂游”軟件設(shè)計與實現(xiàn)?

      2016-02-05 10:03:09王文強(qiáng)王宏亮蔡朝陽
      微處理機(jī) 2016年6期
      關(guān)鍵詞:樂游百度軌跡

      王文強(qiáng),王宏亮,蔡朝陽

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

      基于百度地圖的“樂游”軟件設(shè)計與實現(xiàn)?

      王文強(qiáng),王宏亮,蔡朝陽

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

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

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

      1 引 言

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

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

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

      2 百度地圖API簡介

      百度地圖API是一套為開發(fā)者免費(fèi)提供的應(yīng)用程序接口,包括JavaScript,ios,Android,其中百度地圖Android SDK適用于Android2.1及其以上版本設(shè)備。開發(fā)者可以使用SDK開發(fā)適用于Android系統(tǒng)移動設(shè)備的地圖功能,通過調(diào)用地圖SDK可以訪問百度地圖服務(wù)和數(shù)據(jù),構(gòu)建功能豐富、交互性強(qiáng)的百度地圖應(yīng)用程序。百度地圖Android定位SDK是為Android移動端應(yīng)用提供的一套簡單易用的LBS定位服務(wù)接口,專注于為廣大開發(fā)者提供最好的綜合定位服務(wù),通過使用百度定位SDK,開發(fā)者可以輕松為應(yīng)用程序?qū)崿F(xiàn)智能、精準(zhǔn)、高效的定位功能[6]。

      3 系統(tǒng)設(shè)計

      綜合考察自助出游游客的需求,設(shè)計“樂游”APP其功能結(jié)構(gòu)如圖1所示,功能模塊包括:

      1.路徑規(guī)劃與跟蹤。在百度地圖提供的技術(shù)支持基礎(chǔ)上進(jìn)行二次開發(fā),提供自助出游游客旅游路徑規(guī)劃、導(dǎo)航功能并實時定位與追蹤旅游進(jìn)度。

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

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

      圖1 “樂游”APP系統(tǒng)功能結(jié)構(gòu)圖

      系統(tǒng)設(shè)計基于Android平臺,利用Android SDK提供的功能支持與百度地圖數(shù)據(jù)庫服務(wù)器進(jìn)行數(shù)據(jù)通信,系統(tǒng)架構(gòu)見圖2所示。

      圖2 基于百度地圖的APP系統(tǒng)架構(gòu)

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

      4 系統(tǒng)實現(xiàn)

      4.1 定位技術(shù)

      綜合定位功能指的是根據(jù)游客實際需求,返回游客當(dāng)前所處位置的基礎(chǔ)定位服務(wù),“樂游”軟件定位功能運(yùn)行效果如圖3所示。

      創(chuàng)建定位服務(wù)步驟如下:

      1.初始化LocationClient類,在onCreatea方法中獲取LocationClient并為其添加注冊監(jiān)聽函數(shù)。

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

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

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

      圖3 “樂游”APP定位服務(wù)

      4.2 路徑規(guī)劃與導(dǎo)航

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

      圖4 “樂游”APP路徑規(guī)劃與導(dǎo)航

      設(shè)計借助百度地圖路徑規(guī)劃與導(dǎo)航SDK代碼包實現(xiàn):

      1.創(chuàng)建一個Activity繼承Activity并實現(xiàn)On-MapClickListener和OnGetRoutePlanResultListener接口。

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

      3.創(chuàng)建一個RoutePlanSearch對象,添加設(shè)置路線檢索監(jiān)聽者(setOnGetRoutePlanResultListener(OnGetRoutePlanResultListener listener))。

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

      5.導(dǎo)航(部分代碼)

      4.3 路徑沿途天氣查詢

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

      實現(xiàn)過程:

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

      2.利用地圖API提供的本地搜索功能,根據(jù)提供的城市名稱搜索所處位置并在地圖上進(jìn)行標(biāo)記。

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

      4.解析網(wǎng)頁信息,將網(wǎng)頁信息存放在android頁面中。

      圖5 “樂游”APP天氣查詢

      4.4 興趣點查詢

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

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

      具體實現(xiàn)如下:

      1.調(diào)用定位功能,獲取當(dāng)前地點信息。

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

      3.創(chuàng)建SuggestionSearch對象,同樣設(shè)置監(jiān)聽器。

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

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

      4.5 熱力地圖查詢

      游客在旅游路途中有景點熱度查詢需求,熱力地圖查詢?yōu)橛慰吞峁┲苓吘包c熱度信息。百度地圖熱力圖是用不同顏色的區(qū)塊疊加在地圖上實時描述人群分布、密度和變化趨勢的一個產(chǎn)品,是基于百度大數(shù)據(jù)的一個便民出行服務(wù)。系統(tǒng)調(diào)用百度地圖api客觀的反應(yīng)旅游區(qū)的熱門程度,以及人流量,方便游客提前做好規(guī)劃。軟件運(yùn)行效果如圖7所示。

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

      實現(xiàn)步驟包括:

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

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

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

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

      4.6 軌跡追蹤

      滿足游客旅游過程中隨時掌握當(dāng)前旅游定位以及行程進(jìn)度的需求,軟件運(yùn)行效果如圖8所示。

      圖8 “樂游”APP軌跡追蹤

      實現(xiàn)過程由四步完成:

      1.實例化軌跡服務(wù)客戶端,同時創(chuàng)建鷹眼服務(wù)Id。

      LBSTraceClient client=new LBSTraceClient(getApplicationContext());

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

      3.開啟軌跡追蹤,并調(diào)用繪制軌跡。

      client.startTrace(trace,startTraceListener);

      4.結(jié)束軌跡追蹤服務(wù)。

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

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

      4.7 旅游感悟收藏

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

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

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

      具體實現(xiàn)步驟包括:

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

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

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

      4.獲取當(dāng)前的時間存儲便于遍歷排序。

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

      4.8 我的旅游日記管理

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

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

      實現(xiàn)過程:

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

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

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

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

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

      5 結(jié)束語

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

      [1] 熊剛.基于Android的智能手機(jī)的設(shè)計與實現(xiàn)[D].武漢:武漢理工大學(xué),2010. Xiong Gang.Design and implementation of smartmobile phone based on Android[D].Wuhan University of Technology,2010.

      [2] 劉衛(wèi)國,姚昱禹.Android的架構(gòu)與應(yīng)用開發(fā)研究[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應(yīng)用開發(fā)揭秘[M].北京:機(jī)械工業(yè)出版社,2010. Yang Fengsheng.Android Unleashed[M].Beijing:China Machine Press,2010.

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

      [5] 王紅崧,周海晏.基于百度地圖API的旅游地理信息系統(tǒng)開發(fā)[J].現(xiàn)代計算機(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的房地產(chǎn)展示系統(tǒng)的實現(xiàn)[J].軟件導(dǎo)刊,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] 余志龍,陳昱勛,鄭名杰,陳小風(fēng),著.Google Android SDK開發(fā)范例大全(第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,F(xiàn)ushun 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)

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

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

      2016-04-26

      猜你喜歡
      樂游百度軌跡
      軌跡
      軌跡
      Robust adaptive UKF based on SVR for inertial based integrated navigation
      艱著米樂游倫敦③
      小福爾摩斯(2019年4期)2019-09-10 07:22:44
      跟著米樂游倫敦④
      小福爾摩斯(2019年5期)2019-09-10 07:22:44
      跟著米樂游倫敦⑤
      小福爾摩斯(2019年6期)2019-09-10 07:22:44
      軌跡
      百度年度熱搜榜
      青年與社會(2018年2期)2018-01-25 15:37:06
      進(jìn)化的軌跡(一)——進(jìn)化,無盡的適應(yīng)
      中國三峽(2017年2期)2017-06-09 08:15:29
      快來看!今夏必備的樂游寶典
      荣成市| 宁明县| 景洪市| 尤溪县| 十堰市| 连城县| 行唐县| 宁乡县| 庆城县| 新竹市| 霍林郭勒市| 喀喇| 永仁县| 芮城县| 贺兰县| 从江县| 民县| 嘉鱼县| 贵南县| 陈巴尔虎旗| 东源县| 佛坪县| 射洪县| 德安县| 曲靖市| 高要市| 华阴市| 轮台县| 灯塔市| 扎兰屯市| 三穗县| 旺苍县| 乌拉特后旗| 漯河市| 延寿县| 沙雅县| 九寨沟县| 甘洛县| 阆中市| 定结县| 兴和县|