| 本帖最后由 liu 于 2019-1-10 15:45 编辑 
 
  
 Android新手开发之旅目录
 
 
  
 
 POI(Point of Interest),即“兴趣点”。在地理信息系统中,一个POI可以是一栋房子、一个景点、一个邮筒或者一个公交站等。 百度地图SDK提供三种类型的POI检索:城市内检索、周边检索和区域检索(即矩形区域检索) 
 使用前要确保集成好了百度地图,没集成的可以看http://www.sufeinet.com/thread-24744-1-1.html 
 一、POI城市内检索(关键字检索) 
 1、创建POI检索实例 [Java] 纯文本查看 复制代码 PoiSearch mPoiSearch = PoiSearch.newInstance();2、创建POI检索监听器 [Java] 纯文本查看 复制代码        OnGetPoiSearchResultListener listener=new OnGetPoiSearchResultListener() {
            @Override
            public void onGetPoiResult(PoiResult poiResult) {
                
            }
            @Override
            public void onGetPoiDetailResult(PoiDetailResult poiDetailResult) {
            }
            @Override
            public void onGetPoiDetailResult(PoiDetailSearchResult poiDetailSearchResult) {
            }
            @Override
            public void onGetPoiIndoorResult(PoiIndoorResult poiIndoorResult) {
            }
        };3、设置检索监听器 [Java] 纯文本查看 复制代码 mPoiSearch.setOnGetPoiSearchResultListener(listener);4、设置PoiCitySearchOption,发起检索请求 [Java] 纯文本查看 复制代码  /**
         *  PoiCiySearchOption 设置检索属性
         *  city 检索城市
         *  keyword 检索内容关键字
         *  pageNum 分页页码
         */
        mPoiSearch.searchInCity(new PoiCitySearchOption()
                .city("开封") //必填
                .keyword("美食") //必填
                .pageNum(10));5、释放检索实例 [Java] 纯文本查看 复制代码 mPoiSearch.destroy();二、POI周边检索
 
 周边检索是在一个圆形范围内的POI检索,适用于以某个位置为中心点,自定义搜索半径,搜索某个位置附近的POI
 
 
 [Java] 纯文本查看 复制代码 mPoiSearch.searchNearby(new PoiNearbySearchOption()
        .location(new LatLng(39.915446, 116.403869))
        .radius(100)
        .keyword("餐厅")
        .pageNum(10));
 三、POI区域检索(矩形区域检索)
 
 POI区域检索,即“在由开发者指定的西南角和东北角组成的矩形区域内的POI检索”
 
 
 [Java] 纯文本查看 复制代码 /**
 * 设置矩形检索区域
 */
LatLngBounds searchBounds = new LatLngBounds.Builder()
        .include(new LatLng( 39.92235, 116.380338 ))
        .include(new LatLng( 39.947246, 116.414977))
        .build();
/**
 * 在searchBounds区域内检索餐厅
 */
mPoiSearch.searchInBound(new PoiBoundSearchOption()
        .bound(searchBounds)
        .keyword("餐厅"));
 
 |