您的位置:首页 > 其它

高德地图SDK使用经验

2014-12-23 17:00 106 查看
下文说的是高德地图 Android SDK版本,详细版本如下:

2D地图:v2.3.1

定位:v1.3.0

导航:v1.1.1

发现的问题如下,其中一些疑是地图BUG,一些是需要你自己小心的地方:

1、定位。

public void requestLocationData(java.lang.String provider,
long minTime,
float minDistance,
AMapLocationListener listener)

对于第二个参数,会影响所有回调接口的回调时间。官方的邮件回复是说,会以传入的第二个参数的最大的那个数,作为回调时间。

也就是,如果你在某个地方调用此接口,设置一分钟回调一次,requestLocationData(xxx, 60 * 1000, xx, xxxlistener),而在地图中,对定位按钮添加事件:requestLocationData(xxx, -1, xx, xxxxxlistener),那么这个定位事件会在1分钟之后才回调。如果你有定时更新定位的需求的话,自己写计时器吧。

影响:较大。

2、比例尺。

如果你不调用此接口:
mUiSettings.setScaleControlsEnabled(
true
);那么会有以下结果:


两指缩放地图,会显示出比例尺,并且比例尺会随着地图变化。


双击,或者点击缩放按钮进行地图缩放的话,不会使比例尺出现。而如果比例尺出现的话,也不会因此随着地图而变化。

基于以上结果,导致比例尺与实际不符。

对此问题,官方邮件回复中确定为已知问题。

解决方法,很简单,手动设置为true或false就行。

影响:极小。

3、显示infowindow。

在添加Marker的时候,一定要对MarkerOptions设置anchor和title,否则不能显示InfoWindow。此问题纠结了我许久,最后在与demo的代码进行几乎逐行对比之后,加上了这行代码后才显示出来infowindow。

影响:自己小心。

4、导航的起始坐标点。

导航建议传入一个起始坐标点。反正如果不传,我在室内总是定位不到也无法计算路线,更不用说导航了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: