使用须知

1、什么是腾讯手机地图SDK?

腾讯地图Android SDK是一套基于Android1.6及以上设备的应用接口,通过该接口,您可以方便地访问腾讯地图为您提供的高质量地点数据和服务,构建丰富而实用的地图及位置服务类应用。腾讯地图Android SDK除提供创建底图、缩放、平滑移图等基础功能外,还提供定位、 逆地址解析、实时路况等拓展服务,助您在应用开发中事半功倍。腾讯地图Android SDK的服务需要注册,免费向第三方提供,任何非盈利性网站均可使用。

2、调用有次数限制吗?

目前腾讯手机地图SDK没有单日调用上限的限制。

3、地图SDK提供了哪些功能?

腾讯手机地图SDK提供了基本的地图构建,POI搜索,反地址解析,实时路况;自定义图层等丰富功能,具体的内容您可以详细阅读 参考手册进行进一步的了解。

创建工程

1、地图中显示“鉴权失败,请检查你的key”怎么办?

是否在AndroidManifest.xml的application标签中正确配置Key:

或者是在代码中配置key

2、如何获取Package?

打开Android 应用工程的”AndroidManifest.xml“配置文件,package属性所对应的内容为应用包名。

3、如何让key与APP包名绑定?

控制台的Key设置页面,可以在如下图的位置,设置key与package的对应关系。

4、如何查看当前SDK的版本?

可以在官网下载资源包中查看,例如TencentMapSDK_Android_3D_v4.3.5,当前您下载的SDK版本是4.3.5。

5、2D地图和3D地图在功能上有什么区别?

2D地图功能单一包含地图显示、绘制Marker、圆形、矩形、线段和一些基本的地图事件操作。但是由于2D地图SDK已经停止更新,建议开发者使用最新的3D地图SDK。

3D地图效果炫,支持旋转,3D楼块,提供更多实用接口如热力图、个性化图层、路况、GroundOverlay、离线地图等。

地图显示

1、如何设置地图中心点?

//使用以下方法可以指定地图显示中心点的坐标

2、如何在地图初始化时显示指定的城市?

//获得指定城市中心点的经纬度坐标,可以使用以下方法设置设置地图的可视区域。

3、加载地图显示白屏怎么办?

常见的白屏原因是地图正常绘制渲染,但内部资源没有被正常加载,请开发者检查一下网络、权限、存储是否正常。 另外,Android 10的适配版本为4.2.8,请同步更新SDK版本。

4、加载地图显示黑屏怎么办?

黑屏情况主要的可能原因是地图没有正常绘制渲染,请开发者检查一下地图视图有没有正常绑定各个生命周期方法。

5、初始化出现崩溃怎么办?

初始化崩溃常见的问题是地图引擎库没有正常配置,或者混淆出现问题导致,请参考工程配置进行完整的配置。

6、如何配置路况?

//开启路况服务

7、室内图不可见怎么办?

检查地图KEY是否已经授权了室内图能力,并绑定了指定的室内建筑,再调整地图缩放级别到室内图可用级别。

8、如何解决地图与SurfaceView同时使用出现黑屏及透视问题?

您需要将MapView替换为TextureMapView 修改参考如下代码:

修改为:

9、地图是否支持英文?

目前地图SDK只有海外地图可以切换英文和中文显示,国内地图目前只支持中文。

10、是否支持离线地图呢?

地图SDK从4.3.5版本开始,支持离线地图功能,具体使用请参考开发指南中的离线地图

11、地图中的POI名称是否可以隐藏呢?

可以通过的接口tencentMap.setPoisEnabled(boolean enabled)来设置是否显示POI。

12、建筑物的3D效果是否可以关闭?

可以通过tencentMap.setBuildingEnable(boolean use3DStyle)来设置是否显示3D楼块。

覆盖物

1、如何将Marker固定显示在屏幕的某个位置?

可以通过marker. setFixingPoint(int x, int y);方法将Marker点固定设置在屏幕的某个位置。

2、如何添加海量Marker?

Marker是绘制在地图之上的图片资源,当使用海量的Marker数据时,为了性能体验,建议使用点聚合来辅助显示。

3、如何添加Marker动画?

Marker支持Animation动画,目前支持平移、缩放、旋转、渐变四种。 可以通过marker.setAnimation(Animation animation); 设置动画。

4、InfoWindow是否支持Gif动态图?

支持。使用View型InfoWindow可支持自定义View,然后使用Drawable动画来实现Gif动效。

5、InfoWindowAdapter接口使用View失败怎么办?

在实现该接口方法时候,应该在接口的实现内部提供一个无父级的View对象。另外,需要注意一个问题:在接口实现中,不能调用Marker.showInfoWIndow,否则会导致方法循环调用。

6、多个点标记出现了相互覆盖的情况,如何调整压盖关系呢?

Marker提供了setZIndex(float zIndex) 方法,相同显示level,zIndex值大的会覆盖在值小的上面。

7、为什么多边形的连线是中间交叉的?

在创建Polygon数据模型时,需要注意传入的坐标要按照顶点连接顺序传入,保证图形闭合时顶点连线不会交叉。

8、折线正常显示,但是动态路名文字没有显示?

需保证最上层显示的文本信息中PolylineOptions.TextPriority的属性为:HIGH

9、绘制的多边形,是否可以调整与楼块、POI之间的压盖顺序?

可以通过polygon.setLevel(int level)来设置Polygon与楼块,道路,POI的显示层级关系。 相同Level内的显示层级关系通过polygon.setZIndex(int zIndex) 来控制,zIndex越大越靠上显示。

10、为什么Polyline绘制的路线,会让POI标志物消失?

线覆盖物与其他图形不同,由于一般线是绘制在道路中的,因此具有POI避让规则,会让线周围的POI自动隐藏。

POI搜索

1、使用POI检索时,报签名验证失败怎么办?

如果您的key的WebServiceAPI功能开启了签名校验,就不能直接使用SDK的检索功能了,需要按照签名规则通过HTTP请求WebService接口的方式来实现检索功能。如果您要直接调用SDK中封装好的API来实现检索功能,那在Key的配置中的WebServiceAPI不要勾选SK校验。

2、2D地图是否有检索功能?

2D地图SDK没有提供检索功能接口,建议您将SDK升级到3D地图SDK,或者使用HTTP请求WebService API的接口来实现检索功能。

3、发起检索功能时,为什么不走回调方法?

SearchParam param = new SearchParam(String keyword,Boundary boundary);参数keyword不可以设置为null或空字符串。

定位

1、如何自定义设置默认定位显示的样式?

通过MyLocationStyle设置自定义小蓝点样式

2、定位是否支持点击定位标回调方法?

SDK4.3.5版本新增 tencentMap.setMyLocationClickListener(OnMyLocationClickListener var1) , 监听方法,该方法会在点击定位图标时调用。

3、定位圈自动的缩放,是根据什么来控制的?

定位精度圈会根据当前定位信息的精度来缩放。定位圈越大,精度越低;定位圈越小,精度越高。在室外一般精度会高一些,室内由于gps信号不好,精度就会低。