《Android程序設(shè)計教程》課件第十章GPS地圖定位_第1頁
《Android程序設(shè)計教程》課件第十章GPS地圖定位_第2頁
《Android程序設(shè)計教程》課件第十章GPS地圖定位_第3頁
《Android程序設(shè)計教程》課件第十章GPS地圖定位_第4頁
《Android程序設(shè)計教程》課件第十章GPS地圖定位_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第十章GPS地圖定位目錄10.1位置服務(wù) 10.1.1申請APIKey 10.1.2GPS定位 10.2顯示百度地圖 10.3百度地圖定位 10.4百度地圖檢索 學(xué)習(xí)目標了解百度地圖的位置服務(wù)掌握百度地圖的顯示掌握百度地圖定位掌握百度地圖檢索10.1位置服務(wù)位置服務(wù)(LocationBasedServices,LBS),又稱定位服務(wù)或基于位置的服務(wù),融合了GPS定位、移動通信、導(dǎo)航等多種技術(shù),提供了與空間位置相關(guān)的綜合應(yīng)用服務(wù)。位置服務(wù)首先在日本得到商業(yè)化的應(yīng)用。10.1.1申請APIKey首先,登錄你的百度賬號,并打開/user/reg這個網(wǎng)址接下來,訪問/apiconsole/key這個地址,同意百度開發(fā)者協(xié)議,會進入如圖10.3所示的百度LBS開放平臺主界面。由于這是一個剛剛注冊的賬號,所以目前的應(yīng)用列表是空的,然后點擊“創(chuàng)建應(yīng)用”就可以去申請APIKey了,這個發(fā)布版的SHAI和開發(fā)版的SHAI是我們申請APIKey所必須填寫的一個字段,它指的是打包程序時所用簽名文件的SHAI指紋,可以通過AndroidStudio查看到。打開AndroidStudio中的任意一個項目,點擊右側(cè)工具欄的Gradle→項目名→:app→Tasks→android,如圖10.5所示。這里展示了一個AndroidStudio項目中所有內(nèi)置的GradleTasks,其中signingReport這個Task就可以用來查看簽名文件信息。雙擊signingReport,10.1.2GPS定位在開始編碼之前,我們還需要先將百度LBS開放平臺的SDK準備好,下載地址是:/index.php?title=sdk/download&action#selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool,mapsdk_radar,如圖所示。將我們要用到的相應(yīng)功能的開發(fā)包勾選上,然后點擊“開發(fā)包”下載按鈕即可。下載完成后對該壓縮包解壓,其中會有一個libs目錄,這里面的內(nèi)容就是我們所需要的,如圖所示。libs目錄下的內(nèi)容分為兩部分,BaiduLBS_Android.jar這個文件是Java層要使用到的,其他子目錄下的so文件是Native層要用到的。so文件是用C/C++語言進行編寫,然后再用NDK編譯出來的,已經(jīng)是百度封裝好了的,我們主要將libs目錄下的每一個文件都放置到正確的位置即可。(1)通過AndroidStudio創(chuàng)建一個GPS為名稱的應(yīng)用項目,打開其項目結(jié)構(gòu),發(fā)現(xiàn)app模塊下面有一個libs目錄,這里就是用來存放所有的jar包的,我們將BaiduLBS_Android.jar復(fù)制到這里。(2)展開src/main目錄,右擊該目錄→New→Directory,再創(chuàng)建一個名為jniLibs的目錄,這里是專門用來存放so文件的,然后把壓縮包里的所有目錄直接復(fù)制到這里。由于我們是直接將jar包復(fù)制到libs目錄下的,并沒有修改gradle文件,因此不會彈出我們平時熟悉的SyncNow提示,這個時候必須手動點擊一下AndroidStudio頂部工具欄中的Sync按鈕,不然項目將無法引用到j(luò)ar包中提供的任何接口。點擊Sync按鈕之后,libs目錄下的jar文件就會多出一個向右的箭頭,這就表示項目能夠引用到這些jar包了。10.2顯示百度地圖(1)獲取APIKEY。打開/apiconsole/key網(wǎng)址,創(chuàng)建一個新的應(yīng)用ShowMap,并獲取其APIKEY。(2)新建ShowMap工程,在libs目錄下,配置BaiduLBS_Android.jar包,再創(chuàng)建一個名為jniLibs的目錄,復(fù)制相關(guān)的文件到該目錄下。10.3百度地圖定位百度LBSSDK的API中提供了一個BaiduMap類,它是地圖的總控制器,調(diào)用MapView的getMap()方法就能獲取到BaiduMap的實例,例如:BaiduMapBaiduMap=mapView.getMap();MapStatusUpdateupdate=MapStatusUpdateFactory.zoomTo(12f);baiduMap.animateMapStatus(update);其中,MapStatusUpdateFactory類的zoomTo()方法接收一個float型的參數(shù),就是用于設(shè)置縮放級別的。zoomTo()方法返回一個MapStatusUpdate對象,我們把這個對象傳入BaiduMap類的animateMapStatus()方法當(dāng)中,即可完成縮放功能。LatLng主要就是用于存放經(jīng)緯度值的,它的構(gòu)造方法接收兩個參數(shù),第一個參數(shù)是經(jīng)度值,第二個參數(shù)是緯度值。之后調(diào)用MapStatusUpdateFactory類的newLatLng()方法將LatLng對象傳入BaiduMap類的animateMapStatus()方法當(dāng)中,就可以將地圖移動到指定的經(jīng)緯度上了,寫法如下:LatLngll=newLatLng(29.553,106.236);MapStatusUpdateupdate=Map

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論