全部服务产品
开发者频道
定价
登录
AOI检索
下载开发文档
AOI检索介绍

自6.6.0版本之后支持aoi面数据检索。
根据用户输入的指定地点经纬度,返回对应地点AOI面的边界信息。

使用说明:该服务为高级权限,需申请权限后才可以使用,请工单反馈给我们。

实现步骤
1. 引入头文件

地图AOI数据检索功能使用的是地图SDK检索功能,需要在工程中导入检索功能包BaiduMapAPI_Search.framework

#import<BaiduMapAPI_Base/BMKBaseComponent.h>
#import<BaiduMapAPI_Search/BMKSearchComponent.h>
2. 初始化AOI检索对象
// 初始化BMKAOISearch实例
BMKAOISearch *search = [[BMKAOISearch alloc] init];
3. 设置AOI检索代理
// AOI检索的代理
search.delegate = self;
4. 构造AOI检索参数
//初始化请求参数类BMKAOISearchOption的实例
BMKAOISearchOption *aoiSearchOption = [[BMKAOISearchOption alloc] init];
/// 经纬度数组字符串 (必选)
/// 注意以下两点:
/// 多个经纬度之间以 ; 号分割
/// 经纬度类型必须为 BMK_COORDTYPE_BD09LL
/// eg: 116.31380,40.07445;116.31087,40.07361
aoiSearchOption.locations = @"116.31380,40.07445;116.31087,40.07361";
5. 发起AOI检索请求
BOOL flag = [search aoiSearch:aoiSearchOption];
if (flag) {
NSLog(@"AOI检索成功");
} else {
NSLog(@"AOI检索失败");
}
6. 实现代理方法,获取检索结果
-(void)onGetAOIResult:(BMKAOISearch *)searcher result:(BMKAOISearchResult *)result errorCode:(BMKSearchErrorCode)errorCode {
if (errorCode == BMK_SEARCH_NO_ERROR) {
//在此处理正常结果
} else {
NSLog(@"检索失败");
}
}
7. 处理检索返回的结果

通过代理返回的errorCode判断检索是否成功,如果检索成功,可通过解析result字段获取具体的结果。具体使用示例可参照官方demo中的BMKAOISearchPage。 BMKAOISearchResult 类结构如下图:

aoisearch.svg

说明:

BMKAOIInfoAOI信息,其中paths为加密数据

检索后绘制效果如下:

aoiserch1.png

上一篇

POI检索

下一篇

地点输入提示检索

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