多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > 百度地圖定位原理

百度地圖定位原理

來源:程序員人生   發布時間:2015-05-12 09:02:27 閱讀次數:11208次

定位我們使用的是百度 Android 定位SDKv4.0,我們先了解下定位原理和定位精度


定位原理

使用百度Android定位SDK必須注冊GPS和網絡使用權限。定位SDK采取GPS、基站、Wi-Fi信號進行定位。當利用程序向定位SDK發起定位要求時,定位SDK會根據利用的定位因素(GPS、基站、Wi-Fi信號)的實際情況(如是不是開啟GPS、是不是連接網絡、是不是有信號等)來生成相應定位根據進行定位。
用戶可以設置滿足本身需求的定位根據:
若用戶設置GPS優先,則優先使用GPS進行定位,如果GPS定位未打開或沒有可用位置信息,且網絡連接正常,定位SDK則會返回網絡定位(即Wi-Fi與基站)的最優結果。為了使取得的網絡定位結果更加精確,請打開手機的Wi-Fi開關。




定位精度



了解了百度定位的原理和定位精度以后,接下來我們就來使用百度定位SDKv4.0吧

1 . 導入庫文件

在使用百度定位SDKv4.0之前,我們要下載最新的庫文件,下載地址:點擊下載相干庫文件,將liblocSDK4.so文件拷貝到libs/armeabi目錄下。將locSDK4.0.jar文件拷貝到工程的libs目錄下

2 . 1個獲得當前位置的工具類

package com.smarteye.baidumap; import java.util.Calendar; import com.baidu.location.BDLocation; import com.baidu.location.BDLocationListener; import com.baidu.location.LocationClient; import com.baidu.location.LocationClientOption; import com.baidu.location.LocationClientOption.LocationMode; import com.smarteye.adapter.BVCU_PUCFG_GPSData; import com.smarteye.adapter.BVCU_WallTime; import com.smarteye.coresdk.BVPU; import android.content.Context; import android.util.Log; public class BaiduLocationTools { private LocationClient locationClient; private LocationListener listener; public BaiduLocationTools(Context context) { locationClient = new LocationClient(context.getApplicationContext()); listener = new LocationListener(); locationClient.registerLocationListener(listener); LocationClientOption option = new LocationClientOption(); option.setLocationMode(LocationMode.Device_Sensors); option.setOpenGps(true); option.setTimeOut(10 * 1000); option.setCoorType("bd09ll"); option.setScanSpan(1000); option.setIsNeedAddress(true); option.setNeedDeviceDirect(true); locationClient.setLocOption(option); } public void startLocationStart() { locationClient.start(); } public void stopLocationStart() { if (locationClient != null) { locationClient.stop(); } } private class LocationListener implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { if (location != null) { Log.i("BaiduLocationTools", "location.getLocType----->" + location.getLocType()); GlobalTool.BAIDU_to_WGS84(location); double latitude = location.getLatitude(); double longitude = location.getLongitude(); BVCU_PUCFG_GPSData data = new BVCU_PUCFG_GPSData(); BVCU_WallTime time = new BVCU_WallTime(); Calendar calendar = Calendar.getInstance(); time.iDay = (char) calendar.get(Calendar.DAY_OF_MONTH); time.iHour = ((char) calendar.get(Calendar.HOUR)); time.iMinute = ((char) calendar.get(Calendar.MINUTE)); time.iMonth = ((char) (calendar.get(Calendar.MONTH) + 1)); time.iSecond = ((char) calendar.get(Calendar.SECOND)); time.iYear = ((short) calendar.get(Calendar.YEAR)); data.stTime = time; data.iLatitude = ((int) (latitude * 10000000)); data.iLongitude = ((int) (longitude * 10000000)); Log.i("BaiduLocationTools", "iLatitude------>" + data.iLatitude); Log.i("BaiduLocationTools", "iLongitude------>" + data.iLongitude); data.bOrientationState = 1; data.bAntennaState = 1; BVPU.InputGPSData(data); } } } }

  • BDLocation 封裝了定位SDK的定位結果,在BDLocationListener的onReceive方法中獲得。通過該類用戶可以獲得error code,位置的坐標,精度半徑,地址等信息,對其getLocType ()方法獲得的error code1些情況
  1. 61 : GPS定位結果
  2. 62 : 掃描整合定位根據失敗。此時定位結果無效。
  3. 63 : 網絡異常,沒有成功向服務器發起要求。此時定位結果無效。
  4. 65 : 定位緩存的結果。
  5. 66 : 離線定位結果。通過requestOfflineLocaiton調用時對應的返回結果
  6. 67 : 離線定位失敗。通過requestOfflineLocaiton調用時對應的返回結果
  7. 68 : 網絡連接失敗時,查找本地離線定位時對應的返回結果
  8. 161: 表示網絡定位結果
  9. 162~167: 服務端定位失敗

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美日韩在线播一区二区三区 | 真人性做爰aa毛片免费视频观看 | 欧美成人三级一区二区在线观看 | 久久精品国产免费高清 | 国产农村一一级特黄毛片 | 最近中文字幕完整国语视频 | 在线播放国产视频 | 久久亚洲精品久久久久 | 中文字幕www| 日本欧美在线播放 | 免费区一级欧美毛片 | 国产成人精品一区二区免费 | 欧美一级在线视频 | 天堂在线观看 | 狠狠干天天色 | 国产精品12 | 亚洲国产精品久久久久久网站 | 久久精品免费观看 | 亚洲一区二区久久 | 最近最新免费中文字幕一 | 日韩中文字幕视频在线 | 性欧美高清videosex | 欧美伦乱 | 国产午夜精品免费一二区 | 高清国产一区二区 | 亚洲精品蜜桃久久久久久 | bbbbbxxxxx精品人 | 国产精品精品 | 美国特级成人毛片 | 日韩中文字幕精品一区在线 | 欧美一区二区三区不卡免费 | 亚洲自拍偷拍专区 | 国产一区二区三区 | 久久一区二区三区精品 | 国产片在线观看播放 | 国产成人精品一区二区不卡 | 小说区 图片区 | 亚洲成人天堂 | 可以看毛片的网址 | 国产1区2区3区在线观看 | 在线视频 一区二区 |