android定位sdk | 百度地图api sdk-凯发k8官方旗舰厅

浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
获取地址
下载开发文档
简介

利用定位sdk,不仅可以快速精准的获得经纬度信息,还可以获得当前地点的地址信息,便于开发者使用。

获取地址与获取经纬度使用方法一致,只需在配置定位sdk参数时,做相关的设置即可。此外,如果需要地址信息,需确保手机能够正常连接网络。

具体步骤如下:

1. 第一步,准备工作

在使用定位sdk进行具体开发工作之前,需, 并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。 此外, 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 voidoncreate(){
mlocationclient = new locationclient(getapplicationcontext());
//声明locationclient类
mlocationclient.registerlocationlistener(mylistener);
//注册监听函数
}
3. 第三步,配置定位sdk参数

此处请开发者注意,如果想获取地址信息,需在配置locationclientoption类时做相应的设置。 设置方法与获取经纬度中第三步类似,核心代码如下:

locationclientoption option = new locationclientoption()
option.setisneedaddress(true);
//可选,是否需要地址信息,默认为不需要,即参数为false
//如果开发者需要获得当前点的地址信息,此处必须为true
option.setneednewversionrgc(true);
//可选,设置是否需要最新版本的地址信息。默认需要,即参数为true
mlocationclient.setlocoption(option);
//mlocationclient为第二步初始化过的locationclient对象
//需将配置好的locationclientoption对象,通过setlocoption方法传递给locationclient对象使用
//更多locationclientoption的配置,请参照类参考中locationclientoption类的详细说明
4. 第四步,实现bdabstractlocationlistener接口

android定位sdk自v7.2版本起,对外提供了abstract类型的监听接口bdabstractlocationlistener, 用于实现定位监听。原有bdlocationlistener暂时保留, 推荐开发者升级到abstract类型的新监听接口使用,该接口会异步获取定位结果,核心代码如下:

public class mylocationlistener extends bdabstractlocationlistener{
@override
public voidonreceivelocation(bdlocation location){
//此处的bdlocation为定位结果信息类,通过它的各种get方法可获取定位相关的全部结果
//以下只列举部分获取地址相关的结果信息
//更多结果信息获取说明,请参照类参考中bdlocation类中的说明
string addr = location.getaddrstr();//获取详细地址信息
string country = location.getcountry();//获取国家
string province = location.getprovince();//获取省份
string city = location.getcity();//获取城市
string district = location.getdistrict();//获取区县
string street = location.getstreet();//获取街道信息
string adcode = location.getadcode();//获取adcode
string town = location.gettown();//获取乡镇信息
}
}
5. 第五步,获取定位经纬度

调用locationclient的start()方法,发起请求,在bdabstractlocationlistener接口中, 便可获得定位地址相关的信息。详细信息请参考获取经纬度中第五步的介绍。

上一篇

获取经纬度

下一篇

获取位置描述

本篇文章对您是否有帮助?

网站地图