**注意:**鹰眼SDK3.1.5版本增加隐私合规接口,设置用户是否同意鹰眼SDK隐私政策,默认不同意,设置为YES时才能创建Action,否则返回nil,将影响鹰眼SDK所有功能的使用。
2015年11月26日
iOS SDK Beta1.1
鹰眼轨迹iOS SDK Beta1.1全新推出
新增功能:
支持实时轨迹追踪
支持实时位置和历史轨迹查询
支持地理围栏服务,实现当被追踪者进出设定地理区域时,云端自动推送报警
2015年12月11日
iOS SDK Beta1.3
修复问题:
2015年12月31日
iOS SDK Beta1.4
功能优化:
修复问题:
2016年1月8日
iOS SDK v2.0.0
新增功能:
SDK分为开发和上架两个版本,其中:
- develop版SDK支持模拟器运行,仅用于开发时真机或模拟器运行
- distribution版SDK为上架版,当您的APP需要提交至APP Store发布,则需使用上架版SDK
两个版本的SDK均集合在SDK下载包中,请开发者根据情况使用。
2016年2月18日
iOS SDK v2.0.1
新增功能:
修复问题:
2016年3月10日
iOS SDK v2.0.2
修复问题:
修复了反复开始追踪和停止追踪之后,CPU占用率飙升的问题,提升稳定性。
2016年3月23日
iOS SDK v2.0.3
升级适配:
2016年5月3日
iOS SDK v2.0.5
新增功能:
增加queryFenceStatusByLocation方法,通过指定的经纬度查询被监控对象的状态。
功能优化:
创建围栏时,由之前的可同时监控5个对象,修改为仅可监控一个对象。
stopTrace之后将持续上传缓存数据。开发者调用stopTrace后,SDK会立刻停止采集轨迹,并回调onStopTrace方法返回状态。如此时有缓存数据且网络连通,会继续上传缓存数据直至上传完毕,此时会再次回调onStopTrace方法,返回数据上传完毕。
2016年5月24日
支持IPv6-only网络升级预告
公告:
自6月1日起,所有提交至苹果AppStore的应用必须支持IPv6-only网络。iOS鹰眼SDK产品 确认需要升级支持,目前正在加急开发测试。预计在6月1日前发布Beta版, iOS鹰眼SDK升级时间预计在:(任何调整都将在本帖及时更新) 6月1日提供beta版支持IPv6,仅供集成测试,不可做发版使用 6月7日提供正式版,直接替换beta版本即可。
2016年6月24日
iOS SDK v2.0.8
新增功能:
支持IPV6-only网络
修复问题:
修复网络频繁切换时卡顿的BUG
修复使用私有API导致上架审核失败的问题
2016年8月10日
iOS SDK v2.1.12
新增功能:
重载getTrackHistory方法,增加了processOption和supplementMode参数,用于在查询历史轨迹的时候,指定纠偏选项和里程补偿方式。
新增queryDistance方法,用于查询里程数据
新增createVertexesFence方法,用于创建多边形围栏
createCircularFence方法中,增加precision参数,用于指定触发围栏报警的轨迹点的精度,当采集到的轨迹点的定位精度大于此值的时候,该定位点不用于围栏报警的触发
修复问题:
修复复杂网络环境下,轨迹采集中断的问题
修复一些会导致crash的BUG
2016年10月27日
iOS SDK v2.2.3
新增功能:
新增客户端地理围栏(目前仅支持圆形)
轨迹的查询,服务端围栏等所有使用HTTP协议的操作升级为HTTPS
注:本版本的SDK需要使用Xcode8编译。Swift工程使用本SDK时,需要将Build Settings中的Use Legacy Swift Language Version设置为Yes,否则无法编译通过。因为Xcode8同时支持Swift2.3和Swift3.0两个版本,本SDK目前仅支持Swift2.3版本,所以需要设置此选项。
从 v2.2.3版本开始,iOS SDK只支持真机环境,不支持模拟器。
修复问题:
较长时间断网缓存了大量轨迹数据后,网络恢复时会加速上传缓存数据,而不依赖于打包周期。待缓存数据上传完毕后,再根据打包周期进行上传。
Swift语言调用SDK时,不再需要自己编写module.map文件,直接导入即可使用
2016年12月16日
iOS SDK v2.2.6
新增功能:
提供了开发版(支持真机和模拟器)和上架版(仅支持真机)两个版本的 SDK
提供了 Swift 和 Object C 两种语言的 demo
修复问题:
修复上传自定义字段时值为中文时崩溃的BUG
2.修复创建多边形地理围栏时参数错误的问题
2017年5月25日
iOS SDK v3.0.3
鹰眼 iOS SDK v3.0全新发布
新增功能:
缓存轨迹区分entityName,且支持缓存信息的查询和删除
新增实时纠偏接口
新增关键字模糊查询 entity
实时位置搜索新增周边搜索、矩形范围搜索接口
新增里程计算接口,支持计算纠偏和里程补偿后的里程
新增批量上传轨迹点接口
新增服务端线型围栏和行政区围栏
新增轨迹分析接口
API请求中增加tag字段,用于在响应回调中区分每个请求
修复问题:
修复使用Xcode8.3以及Swift3导入SDK时编译失败的问题
修复网络切换时服务运行异常的问题
提升了服务运行稳定性
功能优化:
对外的API接口由BTRACEAction一个,按照功能拆分为轨迹追踪、终端实体、轨迹、围栏、分析5个部分。分别通过BTKAction, BTKEntityAction, BTKTrackAction, BTKFenceAction, BTKAnalysisAction这5个类中的接口发起请求,通过BTKTraceDelegate, BTKEntityDelegate, BTKTrackDelegate, BTKFenceDelegate, BTKAnalysisDelegate这5个协议中的方法将响应回调给调用者
取消BTRACE类,服务运行需要的基础参数由BTKAction中的initInfo方法设置
服务控制与采集控制接口分离,分别由startService,stopService,startGather,stopGather这四个接口控制
所有接口的输入参数改为对象类型
2017年6月30日
iOS SDK v3.0.4
新增功能:
BTKEntityAction中增加行政区域检索和多边形检索终端的接口。
BTKAnalysisAction中行为分析接口增加了BTKDrivingBehaviorThresholdOption类型的属性用于设置自定义的分析阈值。
修复问题:
内存泄漏
修改注释使其更准确
2017年9月12日
iOS SDK v3.0.5
新增功能:
适配iOS11
修复SDK的内存泄漏
修复DEMO中的若干BUG
为了适配iOS11,在APP的info.plist文件中除了NSLocationAlwaysUsageDescription 字段,还需要配置上NSLocationAlwaysAndWhenInUseUsageDescription 和 NSLocationWhenInUseUsageDescription 字段
2017年10月23日
iOS SDK v3.0.6
修复问题:
修复采集周期和打包周期持久化失败的BUG,设置完采集和打包周期之后,下次开启服务或开始采集时,将使用之前设置的值,而不再使用默认值
修复从非主线程调用 -(void)changeGatherAndPackIntervals:(NSUInteger)gatherInterval packInterval:(NSUInteger)packInterval delegate:(id )delegate; 方法时,采集和打包周期不生效的BUG
修复某些复杂使用场景下,无法停止采集的BUG
2019年1月2日
iOS SDK v3.0.7
新增功能:
支持bitcode,官网下载的framework默认是开启了bitcode的,如果您不希望使用bitcode,可以通过命令自行剥离。例如:xcrun bitcode_strip -r BaiduTraceSDK -o BaiduTraceSDK
支持查询SDK缓存轨迹点的里程,通过BTKQueryTrackCacheInfoRequest类中,新增的needDistance和distanceFilter属性,查询到的缓存信息中将增加distance字段代表里程信息。
BTKTraceDelegate中新增onGetCustomDataResult回调,通知开发者onGetCustomData回调的执行结果。
修复问题:
修复了customData过大时,轨迹无法上传,导致CPU使用率飙升crash的问题。开发者在onGetCustomData中指定的当前时刻的自定义字段总长度不得超过1024字节,并且key要求为NSString类型,value要求为NSString或NSNumber类型
修复部分场景下的内存泄露
更新了Demo中地图SDK的版本
其他若干BUG修复
2019年5月10日
iOS SDK v3.1.0
修改:
新增功能:
1.新增查询指定时间段缓存轨迹里程功能:BTKQueryTrackCacheInfoRequest中新增startTime和endTime,支持查询指定时间段内的缓存轨迹和里程。
2.公共地理围栏性能提升,支持创建公共围栏个数从1000升级至10万(功能说明请点击)。接口调整如下:新增BTKAddMonitoredObjectRequest,BTKDeleteMonitoredObjectRequest,BTKListMonitoredObjectRequest三个请求类,支持给服务端地理围栏添加、删除、查询监控对象。BTKQueryServerFenceStatusRequest,BTKQueryServerFenceStatusByCustomLocationRequest,BTKQueryServerFenceRequest请求类中,新增page_index和page_size字段,支持分页检索。
3.轨迹查询与纠偏接口支持智能交通方式识别功能,支持对综合交通出行轨迹的智能纠偏(功能说明请点击)。接口调整如下:交通方式选项BTKTrackProcessOptionTransportMode中新增自动方式,由鹰眼自动识别交通方式。
4.轨迹查询与里程查询接口支持查询低速里程,即查询速度低于设定阈值的轨迹里程,可应用于网约车精细化计费。接口调整如下:接口BTKQueryTrackDistanceRequest,BTKQueryHistoryTrackRequest请求类中,新增lowSpeedThreshold字段,支持筛选出低速里程。
2019年10月17日
iOS SDK v3.1.1
新增功能:
鹰眼iOS SDK V3.1.1开始支持在前台定位权限下使用,但App集成鹰眼SDK的最佳实践仍然是申请后台定位权限,后台定位的作用是保证应用退到后台时,仍然能持续获得轨迹,最大限度减少被系统杀死的概率。关于定位权限的配置,请参考开发指南中 http://lbsyun.baidu.com/index.php?title=ios-yingyan/guide/buildproject 配置工程说明。此版SDK具体新增内容为:
- (void)onRequestAlwaysLocationAuthorization:(CLLocationManager *)locationManager {
[locationManager requestAlwaysAuthorization];
}
这样做的原因是:AppStore加强了定位权限的审核要求,如果App在plist文件中没有后台定位权限相关的配置,那么不能出现申请后台定位的代码。因此不需要后台定位的App就不需要实现此回调函数,可以通过上架审核。
2020年9月20日
iOS SDK v3.1.2
新增功能:
1.鹰眼iOS SDK V3.1.2开始需要开发者主动申请定位权限,详情可参考工程配置。
2.iOS 14 Beta版适配。
2021年1月25日
iOS SDK v3.1.3
新增功能:
轨迹查询接口对齐web api,新增对长距离终端区间补偿轨迹点的策略,请求字段新增设置supplementContent接口,控制仅补偿里程还是同时补偿轨迹点,返回结果新增supplement字段,用于标识结果中补偿了轨迹点。
修复问题:
修复已知问题
2021年10月20日
iOS SDK v3.1.4
新增功能:
升级OpenSSL库至1.1.1g
修复问题:
修复设置采集周期,设置缓存大小不回调问题
功能优化:
官网demo升级优化
2022年03月14日
iOS SDK v3.1.5
新增功能:
BTKPrivacyAuthorization增加隐私合规接口setAgreePrivacy,使用方法请参考开发者注意事项