历史轨迹查询
本页面主要介绍历史轨迹查询,用户可以查询历行程信息。
   使用步骤
1创建历史轨迹管理器实例   
HistoryTraceManager mHistoryTraceManager = new HistoryTraceManager();
2设置历史轨迹查询监听器
mHistoryTraceManager.setOnHistoryTraceListener(new OnHistoryTraceListener() {
    /**
     * 查询(司机)历史轨迹数据回调
     *
     * @param status              请求历史轨迹数据状态码
     * @param message             请求历史轨迹数据状态描述
     * @param historyTraceData    历史轨迹数据
     */
    @Override
    public void onQueryHistroyTraceData(int status, String message, HistoryTraceData historyTraceData) {
        if (null != historyTraceData) {
            Log.e("SyncDemo", "onQueryHistroyTraceData historyTraceData = " + historyTraceData.toString());
        }
        if (0 == status) {
            HistoryTraceDisplayOptions displayOptions = new HistoryTraceDisplayOptions();
            // 在地图上绘制(司机)历史轨迹,以订单ID为维度
            mHistoryTraceManager.renderHistoryTrace(mBaiduMap, historyTraceData, displayOptions, SynchronizationConstants.LBS_ORDER_STATE_ORDER_COMPLETE);
        }
    }
    /**
     * 在地图上绘制(司机)历史轨迹
     *
     * @param status      绘制历史轨迹数据状态码
     * @param message     绘制历史轨迹数据状态描述
     */
    @Override
    public void onRenderHistroyTrace(int status, String message) {
        Log.e("SyncDemo", "onRenderHistroyTrace status = " + status + "; message = " + message);
    }
});
3设置参数
HistoryTraceQueryOptions historyTraceQueryOptions = new HistoryTraceQueryOptions(); // 设置角色类型,乘客为0,其它值为非法 historyTraceQueryOptions.setRoleType(SynchronizationConstants.ROUTE_ID_PASSENGER); // 设置订单号,必选参数 historyTraceQueryOptions.setOrderId(mRoleOptions.getOrderId()); // 获取厂商标识 historyTraceQueryOptions.setUserId(mRoleOptions.getUserId()); // 设置请求哪个订单状态的历史轨迹,如果库中未找到对应状态的结束时间,则以当前时间为准,且限制最长时间不超过12小时 // 支持以下三种状态接乘客、送乘客、全流程、默认为送乘客。 // 1)、接乘客状态:LBS_ORDER_STATE_PICK_UP_PASSENGER // 2)、送乘客状态:LBS_ORDER_STATE_DELIVER_PASSENGER // 3)、全流程状态:LBS_ORDER_STATE_UNSPECIFIED historyTraceQueryOptions.setQueryOrderState(SynchronizationConstants.LBS_ORDER_STATE_DELIVER_PASSENGER); // 设置当前的订单状态 // 默认值为完成态:LBS_ORDER_STATE_ORDER_COMPLETE // 1)、订单起始时间和当前状态的时间差值不能超过24小时, // 2)、目前订单ID只会保存3天 historyTraceQueryOptions.setCurrentOrderState(SynchronizationConstants.LBS_ORDER_STATE_ORDER_COMPLETE);
4发起历史轨迹查询请求
mHistoryTraceManager.queryHistoryTraceData(historyTraceQueryOptions);
5释放资源
mHistoryTraceManager.release();
