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

iOS 定位SDK

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


2017年10月24日

V1.0

2018年01月11日

V1.1

2018年06月07日

V1.2

2018年07月09日

V1.2.1

2018年09月07日

V1.3

iOS定位SDK V1.0产品更新:
新增:

1. 获取当前位置:基于iOS系统原生定位能力,提供单次定位、连续定位、后台定位能力;

2. 坐标转换:支持直接返回 GCJ02、BD09II、BD09MC、WGS84 类型的坐标。及坐标之间的转换能力;

3. 国内外判断:支持经纬度坐标,在空间上属于国内 / 海外;

4. 移动热点识别:能够识别当前设备所链接的 WI-FI 是否为其他设备所开放的移动热点;

5. 地理围栏:在系统原生地理围栏能力之上,支持多边形围栏;

6. 地址信息获取:获取经纬度的同时,可获取当前地址信息(省、市、区、县等),全球同步支持;

7. 周边POI获取:获取经纬度的同时,可获取当前点周边POI(如周边商场、饭店等);

8. 当前位置描述:获取经纬度的同时,可获取更人性化的当前地点描述(如在百度大厦北侧等)。

iOS定位SDK V1.1版本更新:
优化:

1. 适配iOS11永久定位的设置;

  a. 开发者如果需要永久定位,请在Info.plist里配置NSLocationWhenInUseUsageDescription,NSLocationAlwaysUsageDescription,NSLocationAlwaysAndWhenInUseUsageDescription三项;

  b. 如果仅需要使用期间的定位,则需要配置NSLocationWhenInUseUsageDescription,NSLocationAlwaysAndWhenInUseUsageDescription两项;

2. 优化WI-FI移动热点识别方法的内部逻辑。


新增:

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

2. 在开发者Debug过程中,增加首次定位的日志,便于开发者排查问题使用。

iOS定位SDK V1.2版本更新:
优化:

1、优化内部逻辑;

2、优化定位错误码,最新错误码如下:

typedef NS_ENUM(NSInteger, BMKLocationErrorCode)
      {
          BMKLocationErrorUnKnown = 0,                   ///<未知异常
          BMKLocationErrorLocFailed = 1,                 ///<位置未知,持续定位中
          BMKLocationErrorDenied = 2,                    ///<手机不允许定位,请确认用户授予定位权限或者手机是否打开定位开关
          BMKLocationErrorNetWork = 3,                   ///<因为网络原因导致系统定位失败
          BMKLocationErrorHeadingFailed = 4,             ///<获取手机方向信息失败
          BMKLocationErrorGetExtraNetworkFailed  = 5,    ///<网络原因导致获取额外信息(地址、网络状态等信息)失败
          BMKLocationErrorGetExtraParseFailed  = 6,      ///<网络返回数据解析失败导致获取额外信息(地址、网络状态等信息)失败
          BMKLocationErrorFailureAuth  = 7,              ///<鉴权失败导致无法返回定位、地址等信息
     };


iOS定位SDK V1.2.1版本更新:
优化:

1、解决目前与地图SDK里的定位组件冲突的问题,地图里的定位组件即将下线,建立开发者使用定位SDK。


新增:

1、BMKLocationManager中新增属性,开发者可以设置自定义的用户id,方便后续百度可以查询相关日志,确认定位问题。

@property(nonatomic, retain, nullable) NSString * userID;    ///开发者可以指定该用户的id,用于后续统一识别用户,便于查找问题


iOS定位SDK V1.3产品更新:
新增:

1、BMKLocationManager增加isNeedNewVersionReGeocode配置,开发者可以选择是否需要最新版本rgc数据,默认是不需要NO;YES的情况下,定位sdk会实时返回最新的rgc数据,如城市变更等数据都会实时更新


优化:

1、适配ios12的libstdc++问题

2、需要用到识别移动热点的开发者,ios12之后需要在xcode上增加配置,enable the Access WiFi Information capability

3、优化内部性能