高德地图之周边信息查询
前言
使用贝壳和幸福里APP时有看到关于楼盘附近周边配套设施,贝壳用的是百度API,幸福里是高德的。 然后查询高德文档实现了一下周边配套查询的逻辑。
使用
示例,需求使用各不一样,请自行变通
//150500|150700 PoiSearch.Query query = new PoiSearch.Query("交通设施服务", "150500|150700", cityCode); //keyWord表示搜索字符串, //第二个参数表示POI搜索类型,二者选填其一,选用POI搜索类型时建议填写类型代码,码表可以参考下方(而非文字) //cityCode表示POI搜索区域,可以是城市编码也可以是城市名称,也可以传空字符串,空字符串代表全国在全国范围内进行搜索 query.setPageSize(3);// 设置每页最多返回多少条poiitem query.setPageNum(1);//设置查询页码 PoiSearch poiSearch = new PoiSearch(this, query); poiSearch.setOnPoiSearchListener(new PoiSearch.OnPoiSearchListener() { @Override public void onPoiSearched(PoiResult poiResult, int i) { LogUtils.d("HAHA", "结果 poiResult:" + Arrays.toString(new ArrayList[]{ poiResult.getPois()}) + ";i:" + i); for (PoiItem poiItem : poiResult.getPois()) { String builder = poiItem.getAdName() + ";" + poiItem.getTitle() + ";" + poiItem.getSnippet() + ";" + poiItem.getCityName() + ";" + poiItem.getDistance() + ";"; LogUtils.d("HAHA", "结果 poiItem:" + builder + ";i:" + i); } } @Override public void onPoiItemSearched(PoiItem poiItem, int i) { LogUtils.d("HAHA", "结果 poiItem:" + poiItem.getAdName() + ";i:" + i); } }); //lat 22.598736 //lgt 114.315418 poiSearch.setBound(new PoiSearch.SearchBound(new LatLonPoint(22.598736, 114.315418), 1000));//设置周边搜索的中心点以及半径 poiSearch.searchPOIAsyn();
注
POI分类编码或查看高德文档