示例中心
功能在线体验
控制台
您现在的位置: 开发 > Android 定位SDK > 更新日志 >

高德 开发 Android 定位SDK 更新日志

更新时间:2018年11月23日

高德地图定位 SDK V4.4.0 2018-11-23

功能

1、优化部分定位策略;

2、AMapLocation对象新增可信度属性,辅助判断定位结果的可信任程度;

3、修复:解决特殊情况加CPUType判断不正确的问题。

备注

高德地图定位 SDK V4.3.0 2018-10-18

功能

1、新增部分策略,全盘兼容Android Pie;

2、新增定位坐标系属性透出,通过AMapLocation.getCoordType()方法获取;

3、修复:解决个别坐标系转为高德坐标时,在台湾省转换不准确的问题。

备注

高德地图定位 SDK V4.2.0 2018-08-10

功能

1、优化海外定位安全性问题;

2、增加长时间GPS未定位成功时的重启GPS逻辑;

3、修复:删除地理围栏,围栏内部定位周期没有改变的问题。

备注

高德地图定位 SDK V4.1.0 2018-06-20

功能

1、优化前两次定位无位置描述问题;

2、修复概率性定位无回调问题;

备注

高德地图定位 SDK V4.0.1 2018-04-26

功能

1、问题修复,性能优化。

备注

高德地图定位 SDK V4.0.0 2018-04-24

功能

1、部分场景的离线定位支持。定位能力&成功率提升。

2、优化针对隧道场景的定位效果。

3、问题修复,性能优化。

备注

1、从3.6.1版本开始,AMapLocationClientOption中的set方法统一为返回AMapLocationClientOption对象(静态方法除外,之前不统一,有的是void的有的是返回AMapLocationClientOption对象);

2、从3.6.0版本开始,删除旧版围栏接口,即AMapLocationClient中的接口,包括:addGeoFenceAlert; removeGeoFenceAlert。可以使用新版地理围栏GeoFenceClient中的相关方法代替

高德地图定位 SDK V3.8.0 2018-02-01

功能

1、支持使用前台服务通知的方式规避Android O对于后台连续定位权限的限制。

2、新版H5辅助定位,支持https,支持连续定位、GPS定位等。

3、问题修复,性能优化。

备注

1、从3.6.1版本开始,AMapLocationClientOption中的set方法统一为返回AMapLocationClientOption对象(静态方法除外,之前不统一,有的是void的有的是返回AMapLocationClientOption对象);

2、从3.6.0版本开始,删除旧版围栏接口,即AMapLocationClient中的接口,包括:addGeoFenceAlert; removeGeoFenceAlert。可以使用新版地理围栏GeoFenceClient中的相关方法代替

高德地图定位 SDK V3.7.0 2017-12-19

功能

1、在已有定位模式的基础上,支持按场景批量设定定位option开关,开发更便捷。使用setLocationPurpose方法进行设置,目前支持签到和出行场景。详细设置方式参考说明文档。

2、支持逆地理信息语言设置。目前支持中文和英文的显示。

3、地理围栏监听回调增加设备当前位置的回调。

4、问题修复,性能优化。

备注

1、从3.6.1版本开始,AMapLocationClientOption中的set方法统一为返回AMapLocationClientOption对象(静态方法除外,之前不统一,有的是void的有的是返回AMapLocationClientOption对象);

2、从3.6.0版本开始,删除旧版围栏接口,即AMapLocationClient中的接口,包括:addGeoFenceAlert; removeGeoFenceAlert。可以使用新版地理围栏GeoFenceClient中的相关方法代替

高德地图定位 SDK V3.6.1 2017-10-13

解决问题

问题修复,稳定性提升。

备注

暂无。

高德地图定位 SDK V3.6.0 2017-9-18

功能

1、新增地理围栏监控暂停接口,setGeoFenceAble; pauseGeoFence; resumeGeoFence,可以设置是否接收围栏触发消息通知。同时删除旧版围栏接口,即AMapLocationClient中的接口,包括:addGeoFenceAlert; removeGeoFenceAlert

2、新增定位时,多种信号强度说明。

3、体积瘦身。

4、bug fix。

解决问题

1、可以自由控制是否接收围栏监控消息通知。

2、更好的了解在特定的场景下,选择不同定位方式的原因。

3、降低集成SDK的应用体积。

备注

暂无。

高德地图定位 SDK V3.5.0 2017-7-31

功能

错误码新增subcode,对于可以进一步细分的错误码进行了说明。

细节优化,问题修复。

解决问题

排查问题更便捷。

稳定性提升。

备注

暂无。

高德地图定位 SDK V3.4.1 2017-6-30

功能

新增了权限相关的错误码描述。

细节优化,问题修复。

解决问题

权限问题定位更快速。

稳定性提升。

备注

暂无。

高德地图定位 SDK V3.4.0 2017-4-27

功能

新增获取定位点的位置语义信息。

禁止模拟定位的开关默认置为关闭。

代码架构优化,性能提升。

解决问题

对于定位点更完整的语义描述,帮助用户更好的了解当前位置信息。

定位性能提升。

备注

暂无。

高德地图定位 SDK V3.3.0 2017-1-19

功能

地理围栏 GeoFenceClient 类,新增 removeGeoFence(GeoFence geoFence)、 getAllGeofence() 方法,地理围栏创建成功的回调,添加地理围栏方法稍作修改。

新增两点间距离计算方法,详细内容 点我参考

适配 Android 7.0 操作系统。

解决问题

修复Key建权失败情况下调用最后位置接口拿不到位置问题。

修复调用destroy()方法之后无法立即停止回调的问题。

修复部分手机开启传感器之后,有可能出现定位正确但是经纬度为0的问题。

修复新版地理围栏首次定位失败,后续不会进行定位的问题(3.2.0开始出现)。

修复最后位置存储可能造成ANR的问题。

修复单次定位时,设置setKillProgress(true)不起作用的问题。

备注

暂无。

高德地图定位 SDK V3.2.1 2016-12-28

解决问题

解决 WIFI 未链接状态下定位不准的问题。

解决地理围栏首次定位失败,不能再正常定位的问题。

备注

暂无

高德地图定位 SDK V3.2.0 2016-12-05

功能

地理围栏新版上线!(旧版地理围栏接口废弃,新版提供更全面的功能) 请点我查看详情

1、新版地理围栏支持自定义的圆形、多边形围栏,以及高德POI围栏、行政区划围栏,灵活支持更多业务场景。

2、采用智能融合定位机制,保证准确性的同时能耗更低。

融合室内定位能力。

1、在支持室内定位的建筑物内 SDK 会自动发起室内定位,室内定位精度可达到2M-3M。 请点我查看新增权限

2、同步提供楼层信息和建筑物信息。 请点我查看新增字段

优化基站定位,提升了基站定位的准确性。

新增错误码15,当发生模拟定位时会返回定位失败,如果希望进行位置模拟,可通过setMockEnable(true);进行设置。

解决问题

解决定位 SDK 会概率造成 ANR 的问题。

增加一些必要的try catch保护。

备注

暂无

高德地图定位 SDK V3.1.0 2016-10-27

功能

新增引用 A-GPS 辅助提升 GPS 速度:在高精度定位模式和仅设备定位模式时会尝试引用A-GPS提升提升GPS定位速度,需在AndroidManifest.xml文件中新增权限:android.permission.ACCESS_LOCATION_EXTRA_COMMANDS 点我去拷贝新版权限内容

新增 GPS 状态返回:在仅设备定位模式下会返回 GPS 当前状态,状态分为 GPS 质量好、GPS 质量差、GPS 质量未知,可供判断 GPS 当前工作情况。详见下方备注或参考手册。

新增错误码14:定位失败,由于当前设备 GPS 状态不好,请到开阔地继续尝试。

备注

关于 GPS 状态:仅在仅设备定位的时候返回该数据,支持设置 GPS 模块的超时等待时间,接口复用AMapLocationClientOption类中setHttpTimeOut(long httpTimeOut)/getHttpTimeOut()方法,默认30s。如果在超时时间内没有 GPS 结果返回则返回 GPS 定位失败,错误码14。

关于错误码14:大多数 Android 设备在卫星状态好时可在几秒至十几秒内返回定位结果,但当 GPS 状态不好时可能几分钟都无法正常获取位置。当 GPS 定位超过等待时限时,会告知当前此次定位(如果是单次)失败了,若是连续定位则会继续向 GPS 模块发起定位请求。建议如果已经返回错误码14,请移动设备到相对开阔的露天地方继续尝试。

高德地图定位 SDK V3.0.0 2016-9-22

功能

深度优化网络定位的链路,网络定位速度提升20%,成功率提升0.2%。

新增错误码13:定位失败,由于当前设备未开启WIFI模块或未插入SIM卡,且GPS当前不可用导致无法拿到定位数据源导致定位失败;或者定位权限缺失导致定位失败。

备注

关于错误码13:首先,网络定位依赖设备开启WIFI模块(不必链接上WIFI),或是能够通过基站塔链接互联网(相当于插入一张可以正常工作的SIM卡),如果恰巧此时设备GPS无法链接卫星,且WIFI模块关闭,手机中也没有SIM卡,那么将会返回错误码13的定位失败。一般多在程序测试阶段出现错误码13,建议您在测试时开启设备的WIFI模块,并将设备中插入一张可以正常工作的SIM卡。其次,13也有可能是定位权限缺失,但这类情况一般会出现在Android 6.0以下的设备。因为大部分Android 6.0以下操作系统的权限检测API不能正常的返回权限检测结果,导致这部分错误码没有办法归属到原有的错误码12(权限检测失败)中。所以如果错误码13出现,不仅需要您检查WIFI、GPS和SIM卡模块是否正常工作,还需要检查是否授予了App定位权限。

高德地图定位 SDK V2.9.0 2016-9-6

功能

增加了网络定位访问协议的设置接口,SDK 默认采用 Http 协议发起网络定位,可调整为Https。 点我查看

现在,高精度定位和仅设备定位每次返回都会携带地址描述信息。如果您不需要 SDK 返回地址描述,可以通过AMapLocationClientOption 类的setNeedAddress(boolean isNeedAddress);方法禁用。

备注

Https 协议的安全性更高,但对性能的消耗会更多,流量的消耗也会更大。

我们优化了高精度定位和仅设备定位返回地址描述的机制,现在这两种模式99.99%的情况下都可以返回地址信息,但如果SDK启动时的第一次定位是通过 GPS 拿到的结果,这一次定位暂时还无法提供地址描述。

高德地图定位 SDK V2.8.0 2016-8-11

功能

对网络定位传输进行了优化,减少流量消耗40%左右。

备注

网络定位传输协议优化会有效减少定位 SDK 流量开销;在一定程度上会提升定位成功率,具体效果因网络而异。

高德地图定位 SDK V2.7.0 2016-7-26

功能

对一些代码逻辑进行了加固,防止一些潜在的线程和内存攻击。

解决问题

解决高精度模式定位过程中改变定位周期不灵敏的问题。

解决高精度定位只调用mAMapLocationClient.destroy()方法,但不调用mAMapLocationClient.stop()方法,不会停止定位的问题。

备注

定位 SDK V2.7.0 版本更注重本地安全,也感谢热心开发者通过工单系统给定位团队反馈的问题。

高德地图定位 SDK V2.6.0 2016-6-28

功能

增加设置获取3s内精度最高的单次定位结果接口, 点我查看 。如果设置了 GPS 定位优先返回,或者仅设备定位模式,该方法无法有效运行。

AMapLocation.getLocationDetail()方法会吐出全链路标签CSID,可用于反馈问题。

优化了getLastKnownLocation()所记录的结果,极大的增加了其返回结果的准确性。

包体积优化, 请下载查看

备注

在这里对 3s 内精度最高的单次定位结果做一个说明:首先这个单次定位的结果是通过网络定位的方式获取的,网络定位计算结果的准确程度会强依赖移动设备扫描到的周边环境的精准程度,换句话说它的精准程度取决于设备提供的定位计算数据源的精准程度(AP)。一般搭载 Android 操作系统的移动设备在获取准确 AP 的耗时会在 1-2s 内,当定位器拿到最精准的 AP 之后会发起单次定位的请求,获取这个结果的经验时间是 3s。

CSID 用于您在测试过程中向我们追查定位失败的问题使用。当然,这里指的不是所有情况的定位失败都可以通过CSID查出原因,当出现 定位错误码表 的 3 和 4 这两项时,您又非常确定您的网络正常时可通过反馈CSID核查问题的原因。

定位 SDK V2.6.0 版本将 SDK 体积减小了 60 Kb。主要缩减是通过模块方法公用实现的。

高德地图定位 SDK V2.5.1 2016-6-17

解决问题

解决在AndroidManifest.xml中不设置apiKey,使用setApiKey接口设置Key,在第一次定位时会报鉴权失败的问题。

解决在AndroidMainifest.xml中不设置apiKey(或者写错位置),不使用setApiKey接口设置Key,连续定位,会误报错误码1重要参数为空(应该报错误码7 Key错误)的问题。

解决地理围栏设置时效后不生效问题。

备注

定位 SDK V2.5.1 版本是 V2.5.0版本的修复版本,我们觉得有必要针对一些用户反馈的严重问题作出一个修复版。其中关于Key设置的两个问题在 V2.1.0 版本也可能出现,建议还在使用这些版本的开发者更新到 V2.5.1 版本。

高德地图定位 SDK V2.5.0 2016-5-26

功能

新增接口:AMapLocationClientOption.setLocationCacheEnable(boolean Enable);用于控制网络定位缓存策略生效与否,在定位开始前设置生效。

优化网络定位速度,加快本地操作的处理速度。

解决问题

解决一些低频问题。

备注

在这里对定位缓存做一个简单的介绍,当您和您的设备前后两次定位都存在于相同的位置时,例如,您第一次定位在家中,1小时后的第二次定位依旧处于同样的位置时,定位 SDK 会将缓存下来的相同位置的定位结果返回给您。这么设计的初衷是考虑到手机设备的电池设备能耗非常有限,尽可能的通过减少实质的定位次数来节约电量。但陆续我们接到了不少开发者反馈,在某些设备插电场景和非电池续航的 Android 设备上,开发者不希望拿到缓存定位结果,所以开放了 AMapLocationClientOption.setLocationCacheEnable(boolean Enable) 接口,灵活的控制定位器在返回定位结果时是否返回缓存结果。

高德地图定位 SDK V2.4.1 2016-4-15

修复问题

解决定位缓存存在的问题。

解决一些概率性ANR问题。

备注

定位 SDK V2.4.1 版本是 V2.4.0版本的修复版本,我们觉得有必要针对一些用户反馈的常见问题作出一个修复版。

高德地图定位 SDK V2.4.0 2016-3-8

功能

AMapLocation类新增getAOIName()方法,用于返回当前点所处的AOI面名称信息。

优化仅设备定位模式下持续定位时出现的GPS漂移。

解决问题

解决一些潜在的内存泄露点。

解决App国际化后定位问题。

解决首次启动定位概率性返回错误码10的问题。

解决概率性定位权限缺失问题。

解决setNeedAddress(false)接口失效问题。

备注

在仅设备模式下持续定位时,GPS飘移的情况得到了较大的改善,现在您通过仅设备定位不会再出现跨街区、城市幅度的飘移了。

高德地图定位 SDK V2.3.0 2016-1-12

功能

AMapLocation类新增getSatellite()方法,用于获取GPS定位结果产生时,硬件连接的卫星数。

AMapLocation类新增getStreetNum()方法,用于获取街道门牌号(文字描述)信息。

AMapLocation类新增getStreet()方法,用于获取街道(文字描述)信息,相比getRoad()方法返回的数据会更准确。

增加了Timer唤醒设备CPU的示例, 点我下载Demo

AMapLocation类getRoad()方法过期处理,不再推荐使用,可用getStreet()方法代替。

连续定位间隔最低支持到1秒。

解决问题

解决概率性ANR问题。

解决在未调用destroy时,大概率返回缓存定位结果的问题。

解决连续注册多个地理围栏只有最后一个生效的问题。

解决位置模拟软件“天下游”可对网络定位结果进行篡改的问题。

解决高精度模式下在室外定位出现GPS定位和网络定位交替返回的现象。

解决设置手机的系统语言为法语等其它几种语言时导致的定位失败问题。

解决在调用destroy时,概率出现java.lang.IllegalArgumentException异常的问题。

备注

由于getRoad()方法与getStreet()方法返回的信息会对您的使用造成疑问,故废弃了getRoad()方法,不再推荐使用getRoad()方法获取街道信息。

有用户反馈在手机设备黑屏时,定位 SDK 无法正常的工作,故开放了 Timer唤醒设备CPU的示例 ,也可以进一步参考 定位常见问题

高德地图定位 SDK V2.2.0 2015-12-22

功能

新增离线定位功能:离线状态请求定位将返回缓存基站定位结果。

AMapLocation类中新增getPoiName()方法,返回当前网络定位点最近的一个POI名称。

提升安全性!定位SDK网络请求返回的response信息加密处理。

易用性提升:

● public DPoint(double x,double y) 构造方法调整为public DPoint(double latitude,double longitude)

● DPoint类的getX()、setX(double x)、getY()、setY()方法名和参数替换成

getLongitude(),setLongitude(doublelongitude),getLatitude(),setLatitude(double latitude).

● isAMapDataAvailable(double latitude,double longitude)参数调整,第一个参数传纬度,第二个参数传经度;

优化坐标转换接口,边界值转换结果容错处理。

解决问题

修复定位周期设置为5秒,回调周期为2秒、8秒、2秒、8秒,以及类似问题。

修复设置不进行逆地理返回,但是可能获取到缓存逆地理结果的问题。

备注

功能说明中的“易用性提升”部分修改是将坐标转换接口参数由v2.1.0版本的(经度,纬度)调整为(纬度,经度),这一修改将会在后续的每一个版本生效。

高德地图定位 SDK V2.1.0 2015-12-02

功能

定位过程中判断当前无GPS定位权限,返回错误码至12.

新增坐标转换工具接口,支持GPS/Mapbar/baidu转换至Amap。 点我查看详情>>

CoordinateConverter类新增在判断任意一位置是否在大陆、港澳范围内的接口:isAMapDataAvailable(double x, double y),返回ture代表当前点在大陆、以及港澳范围内。

AMapLocationClientOption.setHttpTimeOut(long time)方法参数调整为long型;

定位返回类型修改,2(智能检测位置无变化,返回上次定位结果)和3(返回上次网络定位结果)统一合并至2。

解决问题

解决低版本jdk编译时出现的proguard无法混淆问题,jar包采用jdk 1.5编译;

解决定位返回类型、定位响应错误码常量被混淆问题;

解决弱网环境下定位过程中调用destroy概率性出现ANR问题;

解决多线程交叉频繁调用startlocation与destroy,概率性打印空指针警告问题;

解决在5.0与5.1系统手机下开始定位以后立即调用destroy,打印日志问题;

备注

定位类型2和3表述的意思相同,为了避免给您造成对定位业务的理解,V2.1.0 版本去掉了定位类型 3,这一修改将会在后续的每一个版本生效。

高德地图定位 SDK V2.0.0 2015-11-17

功能

定位模式变化为高精度定位、低功耗定位、仅设备定位。 点我查看详情>>

天气功能移动到Android SDK的搜索包中(稍后发布)

全新的定位接口,更符合面向对象语言特点,贴近开发者使用习惯。

解决问题

解决定位跳动问题,百米以上的跳点出现概率降低至0.01%。

解决首次定位启动时间慢的问题,相较V1.4.1版本提升15%。

架构层全面优化,大幅提升代码执行效率。

备注

高德定位 SDK V2.0.0 版本采用全新的定位接口,摒弃了AMapLocationManagerProxy等类,突出想向您传达的是“定位客户端”概念,通过AMapLocationClient客户端获取单次定位、连续定位结果,且支持高精度、低功耗、仅设备三种模式。

示例中心 功能
在线体验
常见问题