消费者 SDK 按需行程概览

允许消费者跟踪您为其提供的订单、乘车或其他服务的整个行程,从而量身定制按需行程的消费者体验。

跟踪行程的用户应用

什么是 Consumer SDK?

Consumer SDK 是面向随叫车的 Fleet Engine 的一部分。它提供了用于在车队引擎中对行程数据进行建模和跟踪行程的接口,还提供了可用于创建基于地图的丰富显示内容以与消费者用户分享行程的类。您需要将 Consumer SDK 集成到应用中,并在 Fleet Engine 中设置适当的角色个人资料,以便打造这种消费者体验。

借助 Consumer SDK 平台专用 API,您可以将能够原生嵌入到应用中的历程共享功能构建出来。消费者 SDK 适用于以下平台:

为何使用 Consumer SDK?

将 Consumer SDK 集成到您的随叫车应用中,您就可以提供全面的消费者体验,包括近乎实时的位置更新和道路拍摄位置。您的消费者可以在地图上查看车辆的路线,包括进度详情,以便了解其乘车或送货的具体位置。

您可以使用 Consumer SDK 做些什么?

您可以使用 Driver SDK 和 Fleet Engine 中的信息来打造量身定制的用户体验,包括以下功能:

  • 自定义地图界面,以满足您的品牌推广需求。

  • 跟踪车辆沿路线行驶时的当前位置,其位置会定期更新。

  • 显示上车点和下车点的预计到达时间 (ETA)。

  • 显示剩余距离。

  • 显示路线上的实时路况。

消费者 SDK 的运作方式

概括来讲,Consumer SDK 依赖于以下机制:

  • 拥有适当的车队引擎角色,以便经过身份验证的应用可以跟踪与消费者订单关联的行程。
  • 由后端系统提供的消费者与行程之间的关联。
  • 用于在消费者应用中对行程数据进行建模和共享行程会话的 TripModelJourneySharingSession SDK 类。

消费者 SDK 还提供其他接口和类,以便您打造丰富的应用体验,并包含交通状况、地图标记、预计到达时间和路线数据等详细信息。

Consumer SDK 的运作方式

下表显示了行程的流程,后跟一个消费者应用。

1 使用方应用请求行程 您的后端服务器会收到点播行程请求,然后执行以下操作:
  • 在车队引擎中创建行程。
  • 将行程分配给车辆。
2 司机接受行程 司机应用会获取行程 ID 和行程信息,然后司机接受行程。
3 消费者应用请求跟踪行程 使用方应用从您的后端获取行程 ID,并请求开始跟踪行程。
4 司机开始行程 当司机使用司机应用指示行程已开始时,该应用会通过 Driver SDK 通知您的后端服务器。 例如,当司机即将离开餐厅或开车前往上车地点时。
5 车队引擎开始发送行程信息 Fleet Engine 开始跟踪行程并与用户应用分享行程进度。
6 消费者应用显示行程信息 消费者应用会通知消费者,并开始向他们显示行程信息,并在行程进行时更新行程信息。
7 行程已取消或已完成 当司机取消或完成行程时,司机应用会停用位置信息跟踪,您的后端服务器会指示车队引擎将行程标记为已取消或已完成。
8 消费者应用停止跟踪行程 行程显示为已取消或已完成。
9 系统会对下一次行程重复此过程 系统会创建新的行程,然后重复此过程。

如何使用 Consumer SDK

选择您的平台,了解如何在面向消费者的应用中开始跟踪行程。

Android

1 在 Android 中设置 Consumer SDK 如需在应用中跟踪随叫车行程,请设置 Consumer SDK。如需了解详情,请参阅获取 Android 消费者 SDK
2 设置视觉界面 定义地图并添加对矢量地图的支持,以设置您的消费者体验。如需了解详情,请参阅设置地图
3 跟踪行程 跟踪行程,以便向消费者分享相应车辆的位置。如需了解详情,请参阅跟踪行程
5 更新行程进度和处理行程错误 更新行程详细信息,例如行程距离和预计到达时间,并处理行程中的任何错误。如需了解详情,请参阅更新行程进度处理行程错误
5 在行程结束后停止跟踪 停止跟踪行程即可停止与消费者分享车辆位置信息。如需了解详情,请参阅停止跟踪行程

iOS

1 在 iOS 中设置 Consumer SDK 如需在应用中跟踪随叫车行程,请设置 Consumer SDK。如需了解详情,请参阅获取 iOS 消费者 SDK
2 设置视觉界面 初始化地图视图并处理地图事件,以设置您的用户体验。如需了解详情,请参阅设置地图
3 跟踪行程 跟踪行程,以便向消费者分享相应车辆的位置。如需了解详情,请参阅跟踪行程
5 更新行程进度和处理行程错误 更新行程详细信息,例如行程距离和预计到达时间,并处理行程中的任何错误。如需了解详情,请参阅更新行程进度处理行程错误
5 在行程结束后停止跟踪 停止跟踪行程即可停止与消费者分享车辆位置信息。如需了解详情,请参阅停止跟踪行程

JavaScript

1 在 JavaScript 中设置了消费者 SDK 如需在应用中跟踪随叫车行程,请设置 Consumer SDK。如需了解详情,请参阅设置 JavaScript 使用方 SDK
2 加载和自定义地图 启用 Maps JavaScript API 并设置授权,以设置您的消费者体验。如需了解详情,请参阅设置地图
3 跟踪行程 跟踪行程,以便向消费者分享相应车辆的位置。如需了解详情,请参阅跟踪行程
5 更新行程进度和处理行程错误 更新行程详细信息,例如行程距离和预计到达时间,并处理行程中的任何错误。如需了解详情,请参阅更新和跟踪行程进度处理行程错误
5 在行程结束后停止跟踪 停止跟踪行程即可停止与消费者分享车辆位置信息。如需了解详情,请参阅停止跟踪行程

组件

本部分总结了跟踪行程所需的两个组成部分:

(可选)您还可以使用以下组件自定义消费者体验:

身份验证令牌提取器

如需控制对存储在车队引擎中的位置数据的访问权限,您必须执行以下操作:

  1. 在服务器上为车队引擎实现 JSON Web 令牌 (JWT) 创建服务。如需了解详情,请参阅发出 JWT

  2. 在 Web 应用或移动应用中实现身份验证令牌提取器,以对对位置数据的访问进行身份验证。如需详细了解如何设置令牌提取器,请参阅适用于 AndroidiOSJavaScript 的设置指南。

地图视图和行程跟踪器

跟踪行程包括用于可视化车辆和路点的组件,以及用于显示驾驶员预计到达时间或剩余行驶距离的原始数据 Feed。

下表介绍了这些组件:

组件 说明
消费者地图视图 地图视图用于管理行程的生命周期,在行程进行时显示车辆位置的路点。如果已知车辆的路线,则地图视图会更新车辆路线多段线,以指示车辆沿其路线的进度。
JavaScript 中的行程位置信息提供程序 对于 JavaScript Web 应用,行程位置信息提供程序会将跟踪对象的位置信息馈送到共享的行程地图中。如需了解详情,请参阅实例化行程位置信息提供程序。 您可以使用行程位置信息提供程序跟踪行程的以下详细信息:
  • 行程的上车点或下车点。
  • 分配给行程的车辆的位置和路线。

跟踪的地点对象

位置信息提供程序会跟踪航点和车辆等对象的位置信息,如下表所述。

跟踪的地理位置 说明
上车地点 上车点是行程的起点。
目标位置 目的地是行程结束的位置。它用于标记下车地点。
航点位置 航点位置是指跟踪行程路线上的任何中间位置。虽然从技术层面来说,路点可以包括上车点和下车点,但路点通常是指路线上的中途停靠点。例如,送货路线上取件地和目的地之间的经停点是航点位置。如需了解详情,请参阅车队引擎文档中的行程航点
车辆位置信息 车辆位置是指车辆的报告位置。如需了解详情,请参阅车队引擎文档中的车辆位置

设置地图样式

标记和多段线样式决定了地图上被跟踪的位置对象的外观和风格。您可以使用自定义样式选项来匹配 Web 应用的样式。

控制跟踪的地点的可见性

Fleet Engine 中的预定义位置信息提供程序会遵循以下可见性规则来处理地图上被跟踪的位置信息对象。如果您创建自定义位置信息提供程序或派生位置信息提供程序,则可以更改可见性规则。

  • 只有在行程进行时才能看到车辆:行程车辆从分配给行程到下车时可见。如果行程被取消,车辆将不再显示。

  • 所有其他地点标记始终可见:出发地、目的地和航点的所有其他地点标记始终显示在地图上。例如,无论行程或送货状态如何,行程下车点或运输送货点始终会显示在地图上。

后续步骤

请参阅您要跟踪行程的平台的文档: