OC百度地图城市内检索

在开发项目过程中,遇到的一个问题:
例如:正向地理编码输入大望路、国贸、财富中心等都可以返回经纬度,输入某某咖啡厅、某某写字楼等errorCode不为0,不会返回经纬度。这里如果想搜索大至商圈、著名写字楼等,小至某某咖啡厅、饭店等,我们可以使用poi检索的城市内检索功能。下面是代码示例:

    _poiSearch = [[BMKPoiSearch alloc] init];
    _poiSearch.delegate = self;
    
    _citySearch = [[BMKCitySearchOption alloc] init];
    _citySearch.city = @"北京";
    _citySearch.keyword = @"某某咖啡厅";
    
    BOOL flag = [_poiSearch poiSearchInCity:_citySearch];
    
    if (flag) {
        MyLog(@"城市内检索发送成功");
    } else {
        MyLog(@"城市内检索发送失败");
    }

检索成功后会执行下面方法

- (void)onGetPoiResult:(BMKPoiSearch *)searcher result:(BMKPoiResult *)poiResult errorCode:(BMKSearchErrorCode)errorCode {
    
    if (errorCode == BMK_SEARCH_NO_ERROR) {
        
        if (poiResult.poiInfoList.count > 0) {
            BMKPoiInfo *poiInfo = [poiResult.poiInfoList objectAtIndex:0];
            NSLog(@"%f\n %f", poiInfo.pt.latitude, poiInfo.pt.longtitude ) ;
        }
    
    } else {
        
    }
}

这样可以得到经纬度

你可能感兴趣的:(OC百度地图城市内检索)