全部服务产品
开发者频道
服务升级
登录
获取周边POI
下载开发文档
简介

定位SDK的核心能力就是帮助开发者快速、精准的获取用户定位信息。开发者只需按照如下流程操作,即可获取用户当前位置周边poi。

1. 第一步,准备工作

在使用定位SDK进行具体开发工作之前,需获取密钥(AK), 并对开发工程进行环境配置工作。详细介绍请参考项目创建部分的说明。

2. 第二步,初始化LocationClient类

请在主线程中声明LocationClient类对象,该对象初始化需传入Context类型参数。
建议在EntryAbility中使用单例模式声明LocationClient类对象,方便全局使用同一个对象。该对象初始化需传入Context类型参数。 推荐使用getApplicationConext()方法获取全进程有效的Context。
核心代码段如下:

let locClient: LocationClient | null = null;
try {
locClient = new LocationClient(context);
} catch (Error) {
}
3. 第三步,配置定位SDK参数

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

let option = new LocationClientOption();
option.setIsNeedLocationPoiList(true);//可选,默认为false,设置是否需要POI结果
if (locClient != null) {
locClient.setLocOption(option);
}
4. 第四步,实现BDLocationListener接口

核心代码如下:

class MyLocationListener extends BDLocationListener {
onReceiveLocation(bdLocation: BDLocation): void {
//此处的BDLocation为定位结果信息类,通过它的各种get方法可获取定位相关的全部结果
//以下只列举部分获取周边POI信息相关的结果
//更多结果信息获取说明,请参照类参考中BDLocation类中的说明
let poi: Poi | undefined = bdLocation.getPoiList().pop();
if (poi) {
let poiName: string = poi.getName();//获取POI名称
let poiTags: string = poi.getTags();//获取POI类型
let poiAddr: string = poi.getAddr();//获取POI地址 //获取周边POI信息
}
let poiRegion: PoiRegion | null = bdLocation.getPoiRegion();
if (poiRegion != null) {
let poiDirectionDesc: string = poiRegion.getDirectionDesc();//获取PoiRegion位置关系
let poiRegionName: string = poiRegion.getName();//获取PoiRegion名称
let poiTags: string = poiRegion.getTags();//获取PoiRegion类型
}
}

上一篇

获取位置描述

下一篇

更新日志

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