全部服务产品
开发者频道
服务升级
登录

文档全面上新

更科技的视觉体验,更高效的页面结构,快前往体验吧!

体验新版
 
(未显示1个用户的11个中间版本)
第1行: 第1行:
 
<div class="bluetitle"><div class="services-title-text">简介</div></div>
 
<div class="bluetitle"><div class="services-title-text">简介</div></div>
利用定位SDK,不仅可以快速精准的获得经纬度信息,还可以根据开发者的使用场景选择不同的定位方式,目前百度Android 定位SDK支持签到场景、出行场景和运动场景定位。
+
利用定位SDK,不仅可以快速精准的获得经纬度信息,还可以根据开发者的使用场景选择不同的定位方式来获得位置信息,目前百度Android 定位SDK支持签到场景、出行场景和运动场景定位。
  
获取位置描述与获取经纬度使用方法一致,只需在配置定位SDK参数时,做相关的设置即可。此外,如果需要位置描述信息,需确保手机能够正常连接网络。
+
获取位置描述与获取经纬度使用方法一致,只需在配置定位SDK参数时,做相关的设置即可。
  
 
具体步骤如下:
 
具体步骤如下:
 
<div class="devguide">
 
<div class="devguide">
<div class="leftborderbg" style="height:1220px;"></div>
+
<div class="leftborderbg" style="min-height:2130px;"></div>
 
<div class="devguideorder"><span>1</span>第一步,准备工作</div>
 
<div class="devguideorder"><span>1</span>第一步,准备工作</div>
 
<div class="devguidecenter">在使用定位SDK进行具体开发工作之前,需 [http://lbsyun.baidu.com/apiconsole/key?application=key 获取密钥(AK)],并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。
 
<div class="devguidecenter">在使用定位SDK进行具体开发工作之前,需 [http://lbsyun.baidu.com/apiconsole/key?application=key 获取密钥(AK)],并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。
第27行: 第27行:
 
}
 
}
 
</pre></div>
 
</pre></div>
<div class="devguideorder"><span>3</span>第三步,配置定位SDK参数</div>
+
<div class="devguideorder"><span>3</span>第三步,配置场景定位参数</div>
<div class="devguidecenter">此处请开发者注意,如果想获取位置描述信息,需在配置LocationClientOption类时做相应的设置。设置方法与获取经纬度中第三步类似,核心代码如下:
+
<div class="devguidecenter">
 +
1)签到场景:只进行一次定位返回最接近真实位置的定位结果
 +
 
 +
2)运动场景:高精度连续定位,适用于运动类开发者场景
 +
 
 +
3)出行场景:高精度连续定位,适用于出行类开发者场景
 +
 
 +
设置方法与获取经纬度中第三步类似,核心代码如下:
 
<pre class="prettyprint codestyle">
 
<pre class="prettyprint codestyle">
LocationClientOption option = new LocationClientOption()
+
LocationClientOption locationClientOption = new LocationClientOption();
 +
// 设置定位场景,根据定位场景快速生成对应的定位参数  以出行场景为例
 +
locationClientOption.setLocationPurpose(LocationClientOption.BDLocationPurpose.Sport);
  
 +
</pre>
 +
设置定位场景后,定位SDK会自动配置相应参数。具体配置情况如下。
 +
 +
签到场景:
 +
<pre class="prettyprint codestyle">
 +
LocationClientOption option = new LocationClientOption();
 +
option.setLocationMode(LocationMode.Hight_Accuracy);
 +
option.setLocationNotify(false);
 +
option.setScanSpan(0);
 +
option.setNeedNewVersionRgc(true);
 +
 +
option.setIsNeedAddress(true);
 +
option.setIsNeedLocationPoiList(true);
 +
option.setIsNeedAltitude(true);
 
option.setIsNeedLocationDescribe(true);
 
option.setIsNeedLocationDescribe(true);
//可选,是否需要位置描述信息,默认为不需要,即参数为false
+
option.setWifiCacheTimeOut(10000);
//如果开发者需要获得当前点的位置信息,此处必须为true
+
</pre>
 +
出行场景:
 +
<pre class="prettyprint codestyle">
 +
LocationClientOption option = new LocationClientOption();
 +
option.setLocationMode(LocationMode.Hight_Accuracy);
 +
option.setLocationNotify(true);
 +
option.setScanSpan(3000);
 +
option.setNeedNewVersionRgc(true);
 +
 
 +
option.setIsNeedAddress(true);
 +
option.setIsNeedLocationPoiList(false);
 +
option.setIsNeedAltitude(true);
 +
option.setIsNeedLocationDescribe(false);
 +
option.setWifiCacheTimeOut(1000);
 +
</pre>
 +
运动场景:
 +
<pre class="prettyprint codestyle">
 +
LocationClientOption option = new LocationClientOption();
 +
option.setLocationMode(LocationMode.Hight_Accuracy);
 +
option.setLocationNotify(true);
 +
option.setScanSpan(1000);
 +
option.setNeedNewVersionRgc(true);
 +
 
 +
option.setIsNeedAddress(true);
 +
option.setIsNeedLocationPoiList(false);
 +
option.setIsNeedAltitude(true);
 +
option.setIsNeedLocationDescribe(false);
 +
option.setWifiCacheTimeOut(1000);
 +
</pre>
 +
</div>
  
mLocationClient.setLocOption(option);
 
//mLocationClient为第二步初始化过的LocationClient对象
 
//需将配置好的LocationClientOption对象,通过setLocOption方法传递给LocationClient对象使用
 
//更多LocationClientOption的配置,请参照类参考中LocationClientOption类的详细说明
 
</pre></div>
 
 
<div class="devguideorder"><span>4</span>第四步,实现BDAbstractLocationListener接口</div>
 
<div class="devguideorder"><span>4</span>第四步,实现BDAbstractLocationListener接口</div>
 
<div class="devguidecenter">Android定位SDK自V7.2版本起,对外提供了Abstract类型的监听接口BDAbstractLocationListener,用于实现定位监听。原有BDLocationListener暂时保留,推荐开发者升级到Abstract类型的新监听接口使用,该接口会异步获取定位结果,核心代码如下:
 
<div class="devguidecenter">Android定位SDK自V7.2版本起,对外提供了Abstract类型的监听接口BDAbstractLocationListener,用于实现定位监听。原有BDLocationListener暂时保留,推荐开发者升级到Abstract类型的新监听接口使用,该接口会异步获取定位结果,核心代码如下:
第51行: 第98行:
 
         //更多结果信息获取说明,请参照类参考中BDLocation类中的说明
 
         //更多结果信息获取说明,请参照类参考中BDLocation类中的说明
 
 
         String locationDescribe = location.getLocationDescribe();    //获取位置描述信息
+
         double latitude = location.getLatitude();    //获取纬度信息
 +
        double longitude = location.getLongitude();    //获取经度信息
 
     }
 
     }
 
}
 
}
 
</pre></div>
 
</pre></div>
<div class="devguideorder"><span>5</span>第五步,获取定位位置描述信息</div>
+
<div class="devguideorder"><span>5</span>第五步,获取定位结果</div>
<div class="devguidecenter">调用LocationClient的start()方法,发起请求,在BDAbstractLocationListener接口中,便可获得定位位置描述信息。
+
<div class="devguidecenter">调用LocationClient的start()方法,发起请求,在BDAbstractLocationListener接口中,便可获得。
  
详细信息请参考获取经纬度中第五步的介绍。</div>
+
详细信息请参考[http://lbs.baidu.com/index.php?title=android-locsdk/guide/get-location/latlng 获取经纬度中第五步的介绍]。</div>

2021年6月29日 (二) 16:11的最后版本

简介

利用定位SDK,不仅可以快速精准的获得经纬度信息,还可以根据开发者的使用场景选择不同的定位方式来获得位置信息,目前百度Android 定位SDK支持签到场景、出行场景和运动场景定位。

获取位置描述与获取经纬度使用方法一致,只需在配置定位SDK参数时,做相关的设置即可。

具体步骤如下:

1第一步,准备工作
在使用定位SDK进行具体开发工作之前,需 获取密钥(AK),并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。 此外,Google在Android 6.0中引入了动态权限获取机制,开发者在使用定位SDK之前,请详细了解关于Android 6.0系统开发须知。
2第二步,初始化LocationClient类
请在主线程中声明LocationClient类对象,该对象初始化需传入Context类型参数。推荐使用getApplicationConext()方法获取全进程有效的Context。

核心代码段如下:

public LocationClient mLocationClient = null;
private MyLocationListener myListener = new MyLocationListener();
//BDAbstractLocationListener为7.2版本新增的Abstract类型的监听接口
//原有BDLocationListener接口暂时同步保留。具体介绍请参考后文中的说明
public void onCreate() {
    mLocationClient = new LocationClient(getApplicationContext());     
    //声明LocationClient类
    mLocationClient.registerLocationListener(myListener);    
    //注册监听函数
}
3第三步,配置场景定位参数

1)签到场景:只进行一次定位返回最接近真实位置的定位结果

2)运动场景:高精度连续定位,适用于运动类开发者场景

3)出行场景:高精度连续定位,适用于出行类开发者场景

设置方法与获取经纬度中第三步类似,核心代码如下:

LocationClientOption locationClientOption = new LocationClientOption();
// 设置定位场景,根据定位场景快速生成对应的定位参数  以出行场景为例
locationClientOption.setLocationPurpose(LocationClientOption.BDLocationPurpose.Sport);

设置定位场景后,定位SDK会自动配置相应参数。具体配置情况如下。

签到场景:

LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);
option.setLocationNotify(false);
option.setScanSpan(0);
option.setNeedNewVersionRgc(true);

option.setIsNeedAddress(true);
option.setIsNeedLocationPoiList(true);
option.setIsNeedAltitude(true);
option.setIsNeedLocationDescribe(true);
option.setWifiCacheTimeOut(10000);

出行场景:

LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);
option.setLocationNotify(true);
option.setScanSpan(3000);
option.setNeedNewVersionRgc(true);

option.setIsNeedAddress(true);
option.setIsNeedLocationPoiList(false);
option.setIsNeedAltitude(true);
option.setIsNeedLocationDescribe(false);
option.setWifiCacheTimeOut(1000);

运动场景:

LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);
option.setLocationNotify(true);
option.setScanSpan(1000);
option.setNeedNewVersionRgc(true);

option.setIsNeedAddress(true);
option.setIsNeedLocationPoiList(false);
option.setIsNeedAltitude(true);
option.setIsNeedLocationDescribe(false);
option.setWifiCacheTimeOut(1000);
4第四步,实现BDAbstractLocationListener接口
Android定位SDK自V7.2版本起,对外提供了Abstract类型的监听接口BDAbstractLocationListener,用于实现定位监听。原有BDLocationListener暂时保留,推荐开发者升级到Abstract类型的新监听接口使用,该接口会异步获取定位结果,核心代码如下:
public class MyLocationListener extends BDAbstractLocationListener{
    @Override
    public void onReceiveLocation(BDLocation location){
        //此处的BDLocation为定位结果信息类,通过它的各种get方法可获取定位相关的全部结果
        //以下只列举部分获取位置描述信息相关的结果
        //更多结果信息获取说明,请参照类参考中BDLocation类中的说明
			
        double latitude = location.getLatitude();    //获取纬度信息
        double longitude = location.getLongitude();    //获取经度信息
    }
}
5第五步,获取定位结果
调用LocationClient的start()方法,发起请求,在BDAbstractLocationListener接口中,便可获得。 详细信息请参考获取经纬度中第五步的介绍
  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消