011. 【已解决】关于百度地图SDK v3.6.0以上版本找不到PoiOverlay类(开源代码)的解决方法

最近测试百度地图用SDK v3.7.3的版本,使用POI检索功能的时候,想直接使用PoiOverlay类建立对象把检索出来的结果在地图上表示出来、按照正常的方法以下:api

PoiOverlay poiOverlay = new PoiOverlay(mBaiduMap); poiOverlay.setData(result); poiOverlay.addToMap();
但是不管如何也没有也找不到这个类、后来去了百度官方论坛一看原来以下:
为了给广大开发者提供更丰富的覆盖物展现能力,自V3.6.0起,原内置覆盖物相关类代码开源(MarkerManager/OverlayManager/PoiOverlay/TransitRouteOverlay/WalkingRouteOverlay/BusLineOverlay/DrivingRouteOverlay)。

地图sdk v3.6.0 开放了“点聚合功能”和“内置覆盖物”源码包com.baidu.mapapi.overlayutil。eclipse

关于找不到overlayutil文件的问题,请开发者到官方demo的src目录下获取源码,SDK中的jar包将再也不包含这部分测试

解决方法以下:gradle

1.下载百度地图SDK v3.6.0及以上版本时候,在官网下载相关的demo:ui

下载好后解压、有两个不一样编译软件的demo:

一个是eclipse、另一个是Android studio、我使用的是Android studio环境、那么在Android studio中导入BaiduMapsApiASDemo这个项目、eclipse就导入BaiduMapsDemo这个项目。
3.导入Android studio由于官方的demo的gradle和我本身使用的gradle不一样样、Android版本也不一样样、这时候导入后把官方demo的build.gradle中的compileSdkVersion、buildToolsVersion、minSdkVersion、targetSdkVersiond、supportv7包的版本号改成和本身项目中版本号同样。




4.开源码位置在BaiduMap_AndroidMapSDK_v3.7.3_Sample\BaiduMapsApiDemo\src\com\baidu\mapapi,类PoiOverlay在com.baidu.mapapi.overlayutil包中。而后在官方demo中直接复制(Ctrl+c)粘贴到本身项目相应的位置中:

粘贴到本身的项目中后、这个时候会报错以下:

这个时候右击鼠标delete、删除掉这个包(clusterutil)就能够了。至此项目能够引用PoiOoverlay类了。
相关文章
相关标签/搜索