当您使用 Fleet Engine 历程分享功能进行按需行程时,消费者 可以跟踪订单、约车或您提供的其他服务的进度。
什么是旅程分享?
行程共享是 Fleet Engine 的一项功能,用于按需行程,用于 使用方 SDK。它提供了为行程数据建模并跟踪行程的界面 Fleet Engine 中的会话),并提供用于创建丰富、 基于地图的显示方式,向您的消费者用户显示行程信息。您集成了 SDK 添加到您的应用中,并在 Fleet Engine 中设置适当的角色个人资料, 支持消费者使用历程分享功能。
历程分享可提供特定于平台的 API,以便您构建历程 自动将其共享到应用中消费者 SDK 适用于 以下平台:
为何要使用旅程分享功能?
通过将行程分享功能集成到按需行程应用中,您可以 提供全面的车辆监控体验,近乎实时 位置更新和道路贴靠位置。您的 消费者可以在地图上看到车辆的路线,包括 进度详情,帮助他们了解叫车或送货的位置。
您可以使用旅程分享功能做些什么?
您可以使用来自驱动程序 SDK 和 Fleet Engine 的信息, 提供以下功能的移动 SDK 视图和网络服务响应:
提供地图界面自定义功能,以满足您的品牌需求。
车辆沿路线行驶的当前位置, 其位置会定期更新。
上车点和下车点的预计到达时间 (ETA)。
剩余距离。
路线上的实时路况。
旅程分享的运作方式
概括来讲,历程共享依赖于以下机制:
- 设置适当的 Fleet Engine 用户角色,以便通过身份验证的应用用户可以 提取与其订单关联的行程。
- 消费者与行程之间的关联,由您提供 后端系统
- 使用方 SDK
TripModel
和JourneySharingSession
, 在消费者应用中为行程数据建模并分享行程会话。
Consumer SDK 还提供了其他接口和类 为您的应用创建地图界面,以便消费者能够 提供丰富的应用体验,包括路况、地图标记、预计到达时间和预计到达时间 路由数据
下表显示了共享历程的流程。
1 | 消费者应用请求行程。 | 您的后端服务器收到一个按需行程请求,
以下:
|
2 | 司机接受行程 | 驾驶员应用获取行程 ID 和行程信息,而驾驶员 接受行程。 |
3 | 消费者应用请求访问此历程 | 消费者应用从您的后端获取行程 ID,并 请求,以开始分享旅程。 |
4 | 司机开始行程 | 当驾驶员使用驾驶员应用指示行程已 则应用会通过驱动程序 SDK 通知您的后端服务器。 例如,当驾驶员 即将离开餐厅或开车前往上车点。 |
5 | Fleet Engine 开始分享历程 | Fleet Engine 开始跟踪历程和分享 了解其在消费者应用中取得的进展 |
6 | 消费者应用展示购买历程 | 消费者应用通知消费者并开始显示 将历程呈现给用户,并随着历程的进行而更新历程。 |
7 | 行程已完成或取消 | 当驾驶员取消行程或完成行程时, Driver 应用会停用位置跟踪,而您的后端服务器 告知 Fleet Engine 将行程标记为已取消或已完成。 |
8 | 消费者应用停止分享历程 | 旅程显示为已取消或已完成。 |
9 | 系统会在下次行程中重复此流程 | 系统会创建一个新行程,并重复该过程。 |
如何使用旅程分享
请选择您的平台,了解如何开始分享历程。
Android
1 | 在 Android 中设置使用方 SDK | 如需在您的应用中分享按需行程的历程,请设置消费者 SDK。如需了解详情,请参阅获取 Android 消费者 SDK。 |
2 | 设置旅程分享可视化界面 | 定义地图并添加对矢量地图的支持,以设置旅程的界面。如需了解详情,请参阅设置地图。 |
3 | 分享旅程 | 根据行程信息向您的消费者分享相应车辆的位置信息。如需了解详情,请参阅关注行程。 |
5 | 更新行程进度并处理行程错误 | 更新您的行程详细信息(例如行程距离和预计到达时间),并处理该行程期间的所有错误。如需了解详情,请参阅 更新行程进度并 处理行程错误。 |
5 | 旅程结束后,停止分享 | 停止跟踪行程,即可停止向您的消费者分享车辆的位置信息。如需了解详情,请参阅停止关注行程。 |
iOS
1 | 在 iOS 中设置使用方 SDK | 如需在您的应用中分享按需行程的历程,请设置消费者 SDK。如需了解详情,请参阅获取 iOS 消费者 SDK。 |
2 | 设置旅程分享可视化界面 | 初始化地图视图并处理地图事件,以设置旅程的界面。如需了解详情,请参阅设置地图。 |
3 | 分享旅程 | 根据行程信息向您的消费者分享相应车辆的位置信息。如需了解详情,请参阅关注行程。 |
5 | 更新行程进度并处理行程错误 | 更新您的行程详细信息(例如行程距离和预计到达时间),并处理该行程期间的所有错误。如需了解详情,请参阅 更新行程进度并 处理行程错误。 |
5 | 旅程结束后,停止分享 | 停止关注行程即可停止与您的消费者分享车辆的位置信息。如需了解详情,请参阅停止关注行程。 |
JavaScript
1 | 设置“在 JavaScript 中分享历程” | 如需在您的应用中分享按需行程的历程,请设置消费者 SDK。如需了解详情,请参阅设置 JavaScript 使用方 SDK。 |
2 | 加载并自定义旅程分享地图 | 启用 Maps JavaScript API 并设置授权,以便设置您的行程界面。如需了解详情,请参阅设置地图。 |
3 | 分享旅程 | 根据行程信息向您的消费者分享相应车辆的位置信息。如需了解详情,请参阅关注行程。 |
5 | 更新行程进度并处理行程错误 | 更新您的行程详细信息(例如行程距离和预计到达时间),并处理该行程期间的所有错误。如需了解详情,请参阅 更新并跟踪行程进度和 处理行程错误。 |
5 | 旅程结束后,停止分享 | 停止跟踪行程,即可停止向您的消费者分享车辆的位置信息。如需了解详情,请参阅停止旅程分享。 |
组件
本部分总结了共享历程的两个必要组成部分:
你还可以根据需要自定义行程分享体验 组件:
身份验证令牌提取工具
要控制对存储在 Fleet Engine 中的位置数据的访问权限,您必须执行以下操作: 以下:
为 Fleet Engine 实现 JSON Web 令牌 (JWT) 创建服务 。
在 Web 应用或移动应用中实现身份验证令牌提取程序 对位置数据的访问权限进行身份验证。
对于 请参阅适用于 Android 的设置指南, iOS 或 JavaScript。
地图视图和行程跟踪器
历程共享包含可视化组件 车辆和航点,以及司机预计到达时间的原始数据 Feed 或剩余的行驶距离。
下表介绍了这些组件:
组件 | 说明 |
---|---|
行程共享地图视图 | 地图视图可管理旅程的生命周期,显示航点 随着行程的推进获知车辆位置。 如果车辆的路线已知,地图视图会更新车辆路线 用于指示车辆沿其路线进度的多段线。 |
JavaScript 中的行程位置信息提供程序 | 对于 JavaScript Web 应用,行程位置信息提供程序会馈送位置信息
将跟踪对象的信息传输到共享历程图中。有关
请参阅
实例化行程位置信息提供程序。
您可以使用行程位置提供程序跟踪某个
行程:
|
跟踪的位置对象
位置提供程序会跟踪对象(如航点和 具体见下表。
跟踪的位置 | 说明 |
---|---|
上车地点 | 上车点是指旅程的起点。标记 上车地点。 |
目标位置 | 目的地是指旅程的结束地点。 它标记着下车地点。 |
航点位置 | 航点位置是指 跟踪的旅程。从技术上讲,航点可以包括 上车点和下车点,航点通常指 沿途的经停点。例如,上车点和目的地之间的经停点 交付路线上的位置为航点位置。如需了解详情,请参阅 行程航点 。 |
车辆位置 | 车辆位置是报告的车辆位置。有关 信息,请参阅车辆位置 。 |
设置地图样式
标记和多段线样式决定了 地图上跟踪的位置对象。您可以使用 自定义样式选项,用于更改默认样式以匹配样式 代码。
控制所跟踪位置的可见性
Fleet Engine 中预定义的位置信息提供程序遵循以下可见性规则 。如果您创建自定义或 位置信息提供程序,您可以更改公开范围规则。
只有在行程正在进行时才能看到车辆:行程 从分配给共享车辆的行程到 下车时间。如果行程已取消,车辆将不再可见。
始终显示所有其他地点标记:所有其他地点标记 起点、终点和航点的 始终显示在地图上。对于 例如,分享旅程中的下车地点或送货情况 位置始终显示在地图上,无论 或送货上门。
后续步骤
请参阅您要分享历程的目标平台的相关文档: