中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

百度android定位,百度云手機定位app

android 使用百度api怎么快速定位

在下載頁面下載最新的庫文件。將liblocSDK2.4.so文件拷貝到libs/armeabi目錄下。將locSDK2.4.jar文件拷貝到工程根目錄下,并在工程屬性-Java Build Path-Libraries中選擇“Add JARs”,選定locSDK2.4.jar,確定后返回。這樣您就可以在程序中使用百度定位API了。

成都創(chuàng)新互聯(lián)公司是專業(yè)的上思網(wǎng)站建設(shè)公司,上思接單;提供成都網(wǎng)站建設(shè)、做網(wǎng)站,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行上思網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

設(shè)置AndroidManifest.xml

為區(qū)分2.3版本service,需要將manifest file中的 intent filter聲明為com.baidu.location.service_v2.4 在application標(biāo)簽中聲明service組件

service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" android:permission="android.permission.BAIDU_LOCATION_SERVICE" intent-filter action android:name="com.baidu.location.service_v2.4"/action /intent-filter/service聲明使用權(quán)限

permission android:name="android.permission.BAIDU_LOCATION_SERVICE"/permissionuses-permission android:name="android.permission.BAIDU_LOCATION_SERVICE"/uses-permissionuses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/uses-permissionuses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/uses-permissionuses-permission android:name="android.permission.ACCESS_WIFI_STATE"/uses-permissionuses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/uses-permissionuses-permission android:name="android.permission.CHANGE_WIFI_STATE"/uses-permissionuses-permission android:name="android.permission.READ_PHONE_STATE"/uses-permissionuses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/uses-permissionuses-permission android:name="android.permission.INTERNET" /uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/uses-permissionuses-permission android:name="android.permission.READ_LOGS"/uses-permissionimport相關(guān)類

import com.baidu.location.BDLocation;import com.baidu.location.BDLocationListener;import com.baidu.location.LocationClient;import com.baidu.location.LocationClientOption;import com.baidu.location.BDNotifyListener;//假如用到位置提醒功能,需要import該類功能類的使用

初始化LocationClient類

此處需要注意:LocationClient類必須在主線程中聲明。需要Context類型的參數(shù)。

public LocationClient mLocationClient = null;public BDLocationListener myListener = new MyLocationListener(); public void onCreate() { mLocationClient = new LocationClient(this); //聲明LocationClient類 mLocationClient.registerLocationListener( myListener ); //注冊監(jiān)聽函數(shù)}實現(xiàn)BDLocationListener接口

BDLocationListener接口有2個方法需要實現(xiàn):

1.接收異步返回的定位結(jié)果,參數(shù)是BDLocation類型參數(shù)。

2.接收異步返回的POI查詢結(jié)果,參數(shù)是BDLocation類型參數(shù)。

public class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { if (location == null) return ; StringBuffer sb = new StringBuffer(256); sb.append("time : "); sb.append(location.getTime()); sb.append("\nerror code : "); sb.append(location.getLocType()); sb.append("\nlatitude : "); sb.append(location.getLatitude()); sb.append("\nlontitude : "); sb.append(location.getLongitude()); sb.append("\nradius : "); sb.append(location.getRadius()); if (location.getLocType() == BDLocation.TypeGpsLocation){ sb.append("\nspeed : "); sb.append(location.getSpeed()); sb.append("\nsatellite : "); sb.append(location.getSatelliteNumber()); } else if (location.getLocType() == BDLocation.TypeNetWorkLocation){ sb.append("\naddr : "); sb.append(location.getAddrStr()); } logMsg(sb.toString()); }public void onReceivePoi(BDLocation poiLocation) { if (poiLocation == null){ return ; } StringBuffer sb = new StringBuffer(256); sb.append("Poi time : "); sb.append(poiLocation.getTime()); sb.append("\nerror code : "); sb.append(poiLocation.getLocType()); sb.append("\nlatitude : "); sb.append(poiLocation.getLatitude()); sb.append("\nlontitude : "); sb.append(poiLocation.getLongitude()); sb.append("\nradius : "); sb.append(poiLocation.getRadius()); if (poiLocation.getLocType() == BDLocation.TypeNetWorkLocation){ sb.append("\naddr : "); sb.append(poiLocation.getAddrStr()); } if(poiLocation.hasPoi()){ sb.append("\nPoi:"); sb.append(poiLocation.getPoi()); }else{ sb.append("noPoi information"); } logMsg(sb.toString()); }}設(shè)置參數(shù)

設(shè)置定位參數(shù)包括:定位模式(單次定位,定時定位),返回坐標(biāo)類型,是否打開GPS等等。eg:

LocationClientOption option = new LocationClientOption();option.setOpenGps(true);option.setAddrType("detail");option.setCoorType("gcj02");option.setScanSpan(5000);option.disableCache(true);//禁止啟用緩存定位option.setPoiNumber(5); //最多返回POI個數(shù) option.setPoiDistance(1000); //poi查詢距離 option.setPoiExtraInfo(true); //是否需要POI的電話和地址等詳細信息 mLocClient.setLocOption(option);發(fā)起定位請求

發(fā)起定位請求。請求過程是異步的,定位結(jié)果在上面的監(jiān)聽函數(shù)onReceiveLocation中獲取。

if (mLocClient != null mLocClient.isStarted()) mLocClient.requestLocation();else Log.d("LocSDK_2.0_Demo1", "locClient is null or not started");發(fā)起POI查詢請求

發(fā)起POI查詢請求。請求過程是異步的,定位結(jié)果在上面的監(jiān)聽函數(shù)onReceivePoi中獲取。

if (mLocClient != null mLocClient.isStarted()) mLocClient.requestPoi();位置提醒使用

位置提醒最多提醒3次,3次過后將不再提醒。 假如需要再次提醒,或者要修改提醒點坐標(biāo),都可通過函數(shù)SetNotifyLocation()來實現(xiàn)。

//位置提醒相關(guān)代碼mNotifyer = new NotifyLister();mNotifyer.SetNotifyLocation(42.03249652949337,113.3129895882556,3000,"gps");//4個參數(shù)代表要位置提醒的點的坐標(biāo),具體含義依次為:緯度,經(jīng)度,距離范圍,坐標(biāo)系類型(gcj02,gps,bd09,bd09ll)mLocationClient.registerNotify(mNotifyer);//注冊位置提醒監(jiān)聽事件后,可以通過SetNotifyLocation 來修改位置提醒設(shè)置,修改后立刻生效。

//BDNotifyListner實現(xiàn)public class NotifyLister extends BDNotifyListener{ public void onNotify(BDLocation mlocation, float distance){ mVibrator01.vibrate(1000);//振動提醒已到設(shè)定位置附近 }}

//取消位置提醒mLocationClient.removeNotifyEvent(mNotifyer);

怎么在android百度地圖通過經(jīng)緯度來定位并且顯示出地圖位置

可以參考如下內(nèi)容:

使用Android自帶的LocationManager和Location獲取位置的時候,經(jīng)常會有獲取的location為null的情況,并且操作起來也不是很方便,在這個Demo里我使用了百度地圖API中的定位SDK,可以一次性獲取當(dāng)前位置經(jīng)緯度以及詳細地址信息,還可以獲取周邊POI信息,同時可以設(shè)定位置通知點,當(dāng)?shù)竭_某一位置時,發(fā)出通知信息等方式來告知用戶。jar包下載以及官方文檔請參照:百度定位SDK,前提是需要注冊百度開發(fā)者賬號。

下面來看看定位的基本原理,目前,定位SDK可以通過GPS、基站、Wifi信號進行定位?;径ㄎ涣鞒倘缦聢D所示,當(dāng)應(yīng)用程序向定位SDK發(fā)起定位請求時,定位SDK會根據(jù)當(dāng)前的GPS、基站、Wifi信息生成相對應(yīng)的定位依據(jù)。然后定位SDK會根據(jù)定位依據(jù)來進行定位。如果需要,定位SDK會向定位服務(wù)器發(fā)送網(wǎng)絡(luò)請求。定位服務(wù)器會根據(jù)請求的定位依據(jù)推算出對應(yīng)的坐標(biāo)位置,然后根據(jù)用戶的定制信息,生成定位結(jié)果返回給定位SDK。

為什么百度地圖 Android 版不用開啟 GPS 就能實現(xiàn)定位

手機版百度地圖定位有多種方式,有衛(wèi)星定位(包括GPS)、IP定位(接入數(shù)據(jù)網(wǎng)絡(luò))、WIFI小區(qū)定位(接入WLAN熱點),等等。上述各種定位方式只要有一種具備條件,就可以實現(xiàn)定位,并非必須開啟GPS。

百度地圖的WIFI小區(qū)定位還有個特點,就是連接WIFI時,并不需要必須接通網(wǎng)絡(luò),有時只要搜索到信號就可以定位。

android 版百度地圖如何通過定位功能獲得當(dāng)前的位置所在的城市?

百度地圖是通過移動通信基站定位來確定當(dāng)前位置所在的城市。其原理就是通過測算周圍基站與手機的距離來交會估算手機的空間位置。

手機定位是指通過特定的定位技術(shù)來獲取移動手機或終端用戶的位置信息(經(jīng)緯度坐標(biāo)),在電子地圖上標(biāo)出被定位對象的位置的技術(shù)或服務(wù)。定位技術(shù)有兩種,一種是基于GPS的定位,一種是基于移動運營網(wǎng)的基站的定位?;贕PS的定位方式是利用手機上的GPS定位模塊將自己的位置信號發(fā)送到定位后臺來實現(xiàn)手機定位的?;径ㄎ粍t是利用基站對手機的距離的測算距離來確定手機位置的。后者不需要手機具有GPS定位能力,但是精度很大程度依賴于基站的分布及覆蓋范圍的大小,有時誤差會超過一公里。前者定位精度較高。此外還有利用Wifi在小范圍內(nèi)定位的方式。

為什么百度地圖android定位不準(zhǔn)確

都會有誤差的情況,參考如下內(nèi)容解釋:

基站精度為平均200米左右,視運營商基站覆蓋范圍而定。WIFI精度為20米左右。GPS精度最高,為10米左右(取決于芯片)。在戶外,先開啟GPS再進行定位,結(jié)果較準(zhǔn)。但GPS比較費電,且在室內(nèi)不可用。

另外,addr=detail 想要獲取完整地址(詳細到門牌號),或者addr=rough 想要獲得到城市一個級別的地址(比如返回中國北京北京);

上面這段是百度官方文檔里面的解釋: 這個我 在做的時候基本是這種情況, 文檔里面提到的 精度取決于芯片的問題,其實就是不同手機設(shè)備的差異。這個我專門做過測試,我用了5臺手機測試: htc one ,三星I9118,htc t328w,紅米1s,聯(lián)想a820 。 這5臺手機在室外同一個位置百度地圖定位獲取 經(jīng)緯度坐標(biāo),測試結(jié)果是:

htc one 誤差2-3米 有時候是0-1米 非常精確了相對來說,htc t328w 紅米1s,聯(lián)想 都是 15-30米左右,三星那個機型稍微差點 定位速度不僅慢,而且誤差也較大 誤差有時候是200多米,穩(wěn)定后也是80米左右。這個穩(wěn)定的意思是 ,gps初始化需要時間的,一般要2-3分鐘以后,誤差范圍的數(shù)字會越來越小。

獲取誤差范圍的方法是:BDLocation類下的方法 location.getRadius();//獲取定位精度

網(wǎng)頁標(biāo)題:百度android定位,百度云手機定位app
標(biāo)題來源:http://www.rwnh.cn/article0/dsdjoio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、App設(shè)計、手機網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計、定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
安仁县| 个旧市| 大姚县| 五峰| 定州市| 运城市| 安宁市| 湘阴县| 行唐县| 武安市| 阜阳市| 弥勒县| 健康| 治多县| 大方县| 胶州市| 什邡市| 灌云县| 九龙城区| 诸暨市| 镇沅| 长沙市| 江津市| 思南县| 紫金县| 土默特右旗| 平山县| 丹巴县| 巨野县| 贵港市| 深州市| 漳州市| 扎鲁特旗| 鹤峰县| 康定县| 赞皇县| 谷城县| 祁阳县| 连南| 上虞市| 武威市|