轨迹记录、纠偏类需求强烈建议您使用高德开放平台提供的猎鹰SDK或者猎鹰服务API,后续版本的地图SDK会逐步停止轨迹纠偏接口的维护。
简介
轨迹纠偏可帮助您将您记录的行车轨迹点进行抽稀、纠偏操作,将轨迹匹配到道路上,提供平滑的绘制效果,并计算行驶里程(地图SDK V3.4.0以上支持);也可以通过结合高德定位帮助您记录真实行车轨迹(地图SDK V5.1.0版本以上支持)。
值得注意的是,目前该功能只支持将驾车轨迹纠正到路上。
结合定位轨迹纠偏(自5.2.0版本起支持)
第1步初始化LBSTraceClient
开始记录轨迹,每2s记录一次轨迹,每隔5个点合并请求一次纠偏并回调。
LBSTraceClient lbsTraceClient = LBSTraceClient.getInstance(context);
第2步开启轨迹纠偏
lbsTraceClient.startTrace(TraceListener); //开始采集,需要传入一个状态回调监听。
第3步解析返回结果
void onTraceStatus(Listlocations,Listrectifications,String errorInfo); //locations 定位得到的轨迹点集,rectifications 纠偏后的点集,errorInfo 轨迹纠偏错误信息
第4步结束轨迹纠偏
lbsTraceClient.stopTrace();//在不需要轨迹纠偏时(如行程结束),可调用此接口结束纠偏
自有轨迹纠偏
第1步,初始化LBSTraceClient
mTraceClient = new LBSTraceClient(this.getApplicationContext());
第2步,构造轨迹点数据 List
需要按照 TraceLocation 定义好的格式构造轨迹点 List。
TraceLocation 的信息通过下表中的方法设置:
需要您注意的是,
1、必填信息的缺失会导致纠偏失败,非必填信息的缺失会在一定程度影响最终纠偏结果,因此尽可能的多提供以下信息是确保绘制一条平滑轨迹的最佳方案。建议使用Android定位SDK中高精度,且有速度和角度返回的位置点数