浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

Android 定位SDK

开发者在自己的Android移动应用中集成定位SDK,可轻松实现获取当前位置信息的功能。获取当前位置信息,即我们常说的定位。其中位置信息主要包括经纬度、地址、位置描述、周边POI等

2011.08.29

v1.0.0

2011.11.22

v1.0.2

2012.03.07

v2.0.0

2012.05.10

v2.2.1

2012.06.14

v2.3.0

2012.07.18

v2.4.0

2012.09.11

v2.6.0

2012.12.21

v3.1.0

2013.02.27

v3.3.0

2013.08.26

v4.0.0

2014.02.20

v4.1.0

2014.06.19

v4.2.0

2014.12.11

v5.0.0

2015.04.02

v5.1.0

2015.05.07

v5.2.0

2015.05.22

v5.3.0

2015.07.30

v6.0.5

2015.8.31

v6.1.1

2015.09.24

v6.1.2

2015.10.23

v6.1.3

2016.01.18

v6.2.2

2016.03.10

v6.2.3

2016.08.01

v7.0

2017.02.08

v7.1

2017.08.11

v7.2

2017.12.06

v7.3

2018.02.05

v7.4

2018.03.12

v7.5

Android定位SDK正式上线,实现基础定位能力。

增加超时限制,超过15秒,在onReceiveListener中接收到的串是"InternetException",而不是json串。

修复了电信CDMA定位问题。

Android定位SDK使用接口全面升级。

修复在某些地方wap网络模式下不能定位的bug。

修复在某些安全软件使用主动防御功能、禁止定位时出现的crash现象。

修复某些特殊机型上不能定位的bug。

初始化成功后,会立即进行一次定位,无论使用定时定位模式还是一次定位模式。即在service启动后,会立即进行定位,并调用BDLocationListener进行通知。

修复了之前少数情况下坐标以及时间戳不准确的问题。

新增附近POI查询功能。

去掉share user id限制。

修复其他定位策略上的不合理问题。

新增:

1. 位置提醒功能。

2. 选项控制是否启用缓存策略。

修复:

1. 修复某些特殊机型上不能定位的bug。

新增:

1. 新增省/市/区分级地理信息查询功能。

新增:

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

2. 定位结果新增“是否需要地址信息”设置,默认返回结果无地址信息,从而节省流量。

修复:

1. 定位SDK架构升级各个app单独用自己的定位service,避免各个app共用1个servcie出现的权限问题。

2. 修复Android4.2系统无法获取apn的兼容性问题。

3. 解决某些手机开启GPS遇到NullPointerException的异常问题。

优化:

1. 优化定位性能,提高网络定位精度。

修复:

1. 修复数据库异常信息提示bug。

新增:

1. 地理围栏服务。

2. 定位SDK加入key验证机制。

修复:

1. 返回定位地址信息在某些网络下出现乱码的问题。

2. cursor在某些情况下出现泄露的问题。

新增:

1. 根据传感器信息获取方向信息功能。

2. 根据网络请求判断运营商属性功能。

优化:

1. 优化Key鉴权体系,更加方便的key设置方式,更加完整的key问题追查方式。

2. 优化定位模式,修改之前GPS定位优先和网络定位优先模式为高精度定位模式,低功耗定位模式,仅用设备定位模式三种新模式。

新增:

1. 升级地理围栏功能,增加地理围栏离开判断功能。

优化:

1. 正式优化定位模式,修改之前GPS定位优先和网络定位优先模式为高精度定位模式,低功耗定位模式,仅用设备定位模式三种新模式(废弃之前的接口)。

2. 缩减定位SDK开发包大小。

修复:

1. 修复某些状态下无法获得GPS定位结果的问题。

新增:

1. 新增国外(全球)定位能力开放,直接替换开发包无需修改代码。

优化:

1. Android L 适配优化。

修复:

1. 修复GPS定位方式未返回地址的问题。

新增:

1. 示例代码更新,包含eclipse和Android studio两个版本。

优化:

1. 优化初次定位速度,开启wifi时,平均首次定位时间达137ms,比竞品快57%。

2. 优化国外定位速度。

修复:

1. 修复wifi与gps时间不同步问题。

新增:

1. BDLocation新增接口getcountry(),getCountryCode()接口。

修复:

1. 适配某些ROM下获取基站信息异常情况。

2. 修复连续GPS定位时偶尔返回网络定位结果的问题。

3. 修复与其他第三方SDK不兼容导致的CRASH问题。

优化:

1. 优化首次定位连续返回多个结果问题。

修复:

1. 某些情况下无法立即stop的问题。

2. 修复某些情况下国外定位异常问题。

优化:

1. 新版离线定位功能,速度精度全面升级。

新增:

1. 新增位置语义化/POI功能。

修复:

1. 国外定位地址信息为空问题。

2. 国际化定位cdma手机不能定位成功。

修复:

1. 适配Android M版本。

2. 修复 GPS 回调函数引发空指针异常。

3. 兼容SystemClock.elapsedRealtimeNanos接口,防止可能引起Crash的问题。

修复:

1. 修复Android M动态设置权限导致的SDK Crash。

2. 修复多线程可能引起的异常问题。

修复:

1. 国外定位某些情况城市返回为空。

2. 修复个别情况下Crash问题。

新增:

1. 新增位置自动提醒功能。

修复:

1. 修复nullpointer问题。

2. 修复首次启动SDK前,多次设置option,设置未更新问题。

修复:

1. 修复Google Play检测到的https证书漏洞问题。

2. 全球定位服务全新升级。

优化:

1. 按照功能不同,将原有SDK分为如下四种,开发者可根据实际需求选择使用。

- 基础定位:开发包体积最小,但只包含基础定位能力(GPS/WiFi/基站)、基础位置描述能力(内部功能版本号:7.0.2);

- 离线定位:在基础定位能力基础之上,提供离线定位能力,可在网络环境不佳时,进行精准定位(内部功能版本号:7.0.3);

- 室内定位:在基础定位能力基础之上,提供室内高精度定位能力,精度可达1-3米(内部功能版本号:7.0.4);

- 全量定位:包含离线定位、室内高精度定位能力,同时提供更人性化的位置描述服务(内部功能版本号:7.0.1);

2. 版本号含义变更说明,即通过 LocationClient.getVersion() 获取的结果。三位版本号说明如下:

- 第一位:产品大版本号,针对SDK重大改动升级时递增;

- 第二位:产品小版本号,一般性迭代升级时递增;

- 第三位:功能版本号,7.0版本起按照功能将SDK划分为四部分,利用功能版本号区分;

- 例如:v7.0.1,7.0为产品版本号,1为功能版本号(全量定位)。

3. 优化、完善AK校验机制,充分保证开发者合法权益,保证开发者应用的安全性。AK申请流程:http://lbsyun.baidu.com/index.php?title=android-locsdk/guide/key。

4. 定位SDK内部安全机制全面升级,优化内部防注入策略,为开发者提供更加安全可靠的Android定位SDK产品使用。

新增:

1. 开放高精度室内定位能力,请选择包含『室内定位』的开发包使用,室内定位精度可达到1-3米。

2. 加入GPS质量判断接口,涉及接口为:BDLocation.getGpsAccuracyStatus()。

3. 加入室内外判断接口,涉及接口为:BDLocation.getUserIndoorState()。

4. 加入国内外判断接口,涉及接口为:BDLocation.getLocationWhere()。

5. 加入网络定位返回海拔功能,涉及接口为:BDLocation.getAltitude()。

新增:

1. 新增移动热点判断功能,涉及接口:LocationClient.requestHotSpotState()。

优化:

1. 优化鉴权逻辑;

修复:

1. LocationClient增加独立线程,修复异常情况下造成的ANR。

2. 增强稳定性,修复个别情况下Crash的问题。

优化:

1. 优化精准室内定位环境下,连续定位结果平滑性;

2. 优化定位错误返回码,详见新增中的具体介绍;

3. 优化调整发起定位请求为子线程,接收定位结果回调为主线程;

新增:

1. 新增Abstract类型的监听接口BDAbstractLocationListener,用于实现定位监听,原有BDLocationListener暂时保留,推荐开发者升级到Abstract类型的新监听接口使用;

2. 在BDAbstractLocationListener中新增onLocDiagnosticMessage方法,用于获取定位错误返回码等信息。具体错误码及说明,请参加类参考中的说明;

3. 在LocationClientOption中新增setWifiCacheTimeOut(int time)方法,用于设置WIFI有效期。如果开发者设置了这个接口,首次启动定位时,会先判断当前WIFI是否超出有效期,超出有效期的话,会先重新扫描WIFI,然后再定位,WIFI扫描大概需要1-2s的时间。本功能更适合于对首次定位精度要求高、对速度无要求的开发者;

4. 在BDLocation类中新增getLocationID()方法,用于获取定位唯一标识,这个标识只与定位本身相关。当开发者遇到定位问题时,可将这个唯一标识、出现问题时间及问题描述信息发送至loc-bugs@baidu.com邮件组,我们会有专人支持解决;

5. 在LocationClient类中新增reStart()方法,用于当定位出现某些异常时调用,起到重启定位的作用。具体异常情况请参考开发指南 - 错误码章节的介绍;

修复:

1. 修复了个别情况下Crash的问题;

优化:

1. 优化精准室内定位环境下,连续定位结果平滑性。注意:使用带有室内精准定位的SDK版本时,需增加集成库文件libindoor.so;

2. 优化JNI代码,so库文件升级为liblocSDK7b.so;

新增:

1. 新增适配Android 8.0系统后台连续定位,在LocationClient类中新增方法enableLocInForeground(),用于开启前台定位模式,避免因App退后台时,系统影响正常定位;

2. 在基础定位模块中,类BDAbstractLocationListener中新增onLocDiagnosticMessage方法,用于回调定位问题诊断信息;

3. 在BDLocation类中新增getAdCode()方法,用于获取行政区划代码;

4. 新增辅助H5定位,在LocationClient类中新增方法enableAssistantLocation()方法,调用该方法启动H5辅助定位功能。结合JS API中的定位功能使用,可使JS API中的定位效果更佳;

优化:

1. 优化离线定位内部策略;

修复:

1. 修复SDK内部个别情况下出现Crash的问题;

修复:

1. 修复连续定位扫描不到WIFI时出现Crash的问题;