SDK负责接收状态,而不维护状态,也不对状态的转换做限制。SDK在不同的状态下对应不同的策略。初始化之后的订单状态默认是未知状态。当订单的状态需要改变时,乘客端可以通过更改 orderState 属性值改变订单状态。
用户须知
// 更新订单状态信息 司乘同显实际上根据订单状态触发绘制,不同的状态绘制策略不一致,所以此方法是触发绘制的唯一入口。// LBS_ORDER_STATE_UNSPECIFIED = 0 未知订单状态,不做任何处理;// LBS_ORDER_STATE_READY_FOR_SERVICE = 1 司机待服务状态 ,开始拉取数据// LBS_ORDER_STATE_PICK_UP_PASSENGER = 2 司机去上车点接乘客状态// LBS_ORDER_STATE_WAIT_PASSENGER = 3 司机已到上车点,等待乘客上车状态// LBS_ORDER_STATE_DELIVER_PASSENGER = 4 乘客已经上车,司机送乘客去目的地// LBS_ORDER_STATE_ORDER_COMPLETE = 5 订单完成syncManager.updateOrderState(OrderState.LBS_ORDER_STATE_ORDER_COMPLETE)
变更订单信息终点位置,调用以下接口来变更目的地:
/*** 动态更新订单终点信息* 更改完成后,会在一个司机位置拉取间隔之后更新地图上新的终点ICON** 需要注意的是:* 1. 如果调用该接口更新了目的地,那么在用户退出司乘同显或者APP退出(杀死)之后* APP的开发者再次进入司乘同显的时候需要以最后更新的目的地来初始化司乘同显;* 2. 目的地变更后,会更新目的地Marker并删除旧路线,如果变更事件上传服务端失败,那么* 会出现无法绘制新路线的情况** @param point 新的终点坐标,必须参数,如果非法或者为Null,则更改不生效* @param name 新的终点名称,必须参数,如果为null,则更改不生效* @param poiId 新的终点POI ID,为保证算路的精准性,建议该参数输入。* @param coordType 新的终点坐标类型,必须参数,如果为null或者非法,更改不生效。* 当前仅支持BD09LL和COMMON,默认BD09LL。* 参见 {@link SyncCoordinateConverter.CoordType}。**/updateOrderEndPositionInfo(point: LatLng, name: string, poiId: string,coordType: CoordType): void {}
具体使用:
/*** 修改终点输入的弹框*/private changeEndInputDialog: CustomDialogController | null = new CustomDialogController({builder: ChangeOrderStartOrEndPointDialog({title: '请输入要修改的终点信息',sureBack: (name, location, pid) => {syncManager.updateOrderEndPositionInfo(location, name, pid, coordType)}}),autoCancel: false})
上一篇
下一篇
本篇文章对您是否有帮助?