您可以讓消費者追蹤訂單、乘車或其他服務的行程,為他們提供量身打造的隨選行程體驗。
什麼是 Consumer SDK?
Consumer SDK 是 Fleet Engine 的一部分,用於隨選行程。這個 SDK 提供介面,可模擬行程資料並追蹤 Fleet Engine 中的行程,並提供類別,可用於建立豐富的地圖式螢幕,與消費者使用者分享行程。您需要將 Consumer SDK 整合至應用程式,並在 Fleet Engine 中設定適當的角色設定檔,才能建立這項消費者體驗。
您可以使用 Consumer SDK 平台專屬 API,在應用程式中建構原生分享行程功能。Consumer SDK 適用於下列平台:
為什麼要使用 Consumer SDK?
將 Consumer SDK 整合至隨選行程應用程式,即可提供全方位的消費者體驗,包括近乎即時的位置更新通知和貼齊道路的位置。消費者可以查看疊加在地圖上的車輛路線,包括進度詳細資料,瞭解行程或外送進度。
Consumer SDK 有哪些用途?
您可以使用 Driver SDK 和 Fleet Engine 的資訊,建立自訂消費者體驗,包括下列功能:
根據品牌需求自訂地圖 UI。
追蹤車輛沿著路線行駛時的目前位置,系統會定期更新位置。
顯示上車和下車地點的預計到達時間 (ETA)。
顯示剩餘距離。
顯示路線上的即時路況。
Consumer SDK 的運作方式
大致來說,Consumer SDK 仰賴下列機制:
- 具備適當的 Fleet Engine 角色,讓經過驗證的應用程式可以追蹤與消費者訂單相關聯的行程。
- 由後端系統提供,用於連結消費者和行程。
TripModel和JourneySharingSessionSDK 類別,用於模擬行程資料,並在消費者應用程式中分享行程工作階段。
Consumer SDK 也提供其他介面和類別,方便您建立豐富的應用程式體驗,並提供路況、地圖標記、預計到達時間和路線資料等詳細資料。
下表顯示行程流程,以及消費者應用程式的對應動作。
| 1 | 消費者應用程式要求行程 | 後端伺服器收到隨選行程要求,並執行下列操作:
|
| 2 | 司機接受行程 | 司機應用程式會取得行程 ID 和行程資訊,司機則會接受行程。 |
| 3 | 消費者應用程式要求追蹤行程 | 消費者應用程式會從後端取得行程 ID,並要求開始追蹤行程。 |
| 4 | 司機開始行程 | 司機透過司機應用程式表示行程已開始時,應用程式會透過 Driver SDK 通知後端伺服器。例如司機即將離開餐廳或前往取餐地點時。 |
| 5 | Fleet Engine 開始傳送行程資訊 | Fleet Engine 會開始追蹤行程,並與消費者應用程式分享進度。 |
| 6 | 消費者應用程式顯示行程資訊 | 消費者應用程式會通知消費者,並開始向他們顯示行程資訊,並隨著行程進度更新行程。 |
| 7 | 行程已取消或完成 | 司機取消或完成行程後,司機應用程式會停用位置追蹤功能,後端伺服器則會指示 Fleet Engine 將行程標示為已取消或已完成。 |
| 8 | 消費者應用程式停止追蹤行程 | 行程顯示為已取消或已完成。 |
| 9 | 重複上述流程,直到行程結束 | 系統會建立新的行程,並重複上述程序。 |
如何使用 Consumer SDK
請選取平台,瞭解如何在消費者應用程式中追蹤行程。
Android
| 1 | 在 Android 中設定 Consumer SDK | 如要在應用程式中追蹤隨選行程,請設定 Consumer SDK。詳情請參閱「取得 Android Consumer SDK」。 |
| 2 | 設定視覺介面 | 定義地圖並新增向量地圖支援,設定消費者體驗。詳情請參閱「設定地圖」。 |
| 3 | 追蹤行程 | 追蹤行程,與消費者分享適當車輛的位置。詳情請參閱「追蹤行程」。 |
| 5 | 更新行程進度及處理行程錯誤 | 更新行程詳細資料,例如行車距離和預計到達時間,並處理行程期間發生的任何錯誤。詳情請參閱「更新行程進度」和「處理行程錯誤」。 |
| 5 | 行程結束後,停止追蹤 | 停止追蹤行程,即可停止與消費者分享車輛位置。詳情請參閱「停止追蹤行程」。 |
iOS
| 1 | 在 iOS 中設定 Consumer SDK | 如要在應用程式中追蹤隨選行程,請設定 Consumer SDK。詳情請參閱「取得 iOS Consumer SDK」。 |
| 2 | 設定視覺介面 | 初始化地圖檢視畫面並處理地圖事件,設定消費者體驗。詳情請參閱「設定地圖」。 |
| 3 | 追蹤行程 | 追蹤行程,與消費者分享適當車輛的位置。詳情請參閱「追蹤行程」。 |
| 5 | 更新行程進度及處理行程錯誤 | 更新行程詳細資料,例如行車距離和預計到達時間,並處理行程期間發生的任何錯誤。詳情請參閱「更新行程進度」和「處理行程錯誤」。 |
| 5 | 行程結束後,停止追蹤 | 停止追蹤行程,即可停止與消費者分享車輛位置。詳情請參閱「停止追蹤行程」。 |
JavaScript
| 1 | 設定 JavaScript 版 Consumer SDK | 如要在應用程式中追蹤隨選行程,請設定 Consumer SDK。詳情請參閱「設定 JavaScript Consumer SDK」。 |
| 2 | 載入及自訂地圖 | 啟用 Maps JavaScript API 並設定授權,即可設定消費者體驗。詳情請參閱「設定地圖」。 |
| 3 | 追蹤行程 | 追蹤行程,與消費者分享適當車輛的位置。詳情請參閱「追蹤行程」。 |
| 5 | 更新行程進度及處理行程錯誤 | 更新行程詳細資料,例如行車距離和預計到達時間,並處理行程中的任何錯誤。詳情請參閱「更新及追蹤行程進度」和「處理行程錯誤」。 |
| 5 | 行程結束後,停止追蹤 | 停止追蹤行程,即可停止與消費者分享車輛位置。詳情請參閱「停止追蹤行程」。 |
元件
本節總結追蹤行程所需的兩個必要元件:
您也可以視需要使用下列元件,自訂消費者體驗:
驗證權杖擷取器
如要控管 Fleet Engine 中位置資料的存取權,請務必完成下列操作:
在伺服器上為 Fleet Engine 導入 JSON Web Token (JWT) 建立服務。詳情請參閱「核發 JWT」。
在網頁或行動應用程式中導入驗證權杖擷取工具,驗證位置資料的存取權。如要進一步瞭解如何設定權杖擷取器,請參閱 Android、iOS 或 JavaScript 的設定指南。
地圖檢視和行程追蹤工具
追蹤行程包含車輛和路線控點的視覺化元件,以及駕駛預計到達時間或剩餘行駛距離的原始資料動態饋給。
下表說明這些元件:
| 元件 | 說明 |
|---|---|
| 消費者地圖檢視 | 地圖檢視畫面會管理行程的生命週期,並在行程進行時顯示車輛位置的路線控點。如果車輛路線已知,地圖檢視畫面會更新車輛路線折線,指出車輛沿著路線行駛的進度。 |
| JavaScript 行程位置供應器 | 如果是 JavaScript 網頁應用程式,行程位置資訊提供者會將追蹤物件的位置資訊,提供給共用行程地圖。詳情請參閱「例項化行程位置供應器」。您可以使用行程位置提供者追蹤下列行程詳細資料:
|
追蹤的位置物件
位置資訊提供者會追蹤路線控點和車輛等物件的位置,詳情請參閱下表。
| 追蹤的位置 | 說明 |
|---|---|
| 取車地點 | 上車地點是行程的起點。 |
| 目的地位置 | 目的地位置是行程結束的位置。標示下車地點。 |
| 路線控點位置 | 路線控點位置是指追蹤行程路線上的任何中繼位置。嚴格來說,路線控點可以包含上車和下車地點,但通常是指路線上的中途停靠點。舉例來說,運送路線上取貨地點和目的地之間的停靠站,就是路線控點位置。詳情請參閱 Fleet Engine 說明文件中的「行程路線控點」。 |
| 車輛位置 | 車輛位置是指車輛回報的位置。詳情請參閱 Fleet Engine 說明文件中的「車輛位置」。 |
設定地圖樣式
標記和折線樣式會決定地圖上追蹤位置物件的外觀和風格。您可以使用自訂樣式選項,配合網頁應用程式的樣式。
控管追蹤位置的顯示設定
Fleet Engine 中預先定義的位置資訊提供者,會遵循下列可見度規則,在地圖上顯示追蹤的位置物件。如果您建立自訂或衍生位置供應器,則可以變更瀏覽權限規則。
車輛僅在行程進行中顯示:行程車輛從指派到行程開始,直到下車為止,都會顯示。如果行程取消,車輛就不會再顯示。
一律顯示所有其他位置標記:地圖上一律會顯示起點、目的地和路線控點的所有其他位置標記。舉例來說,無論行程或運送狀態為何,地圖一律會顯示行程下車地點或運送地點。
後續步驟
請參閱您要追蹤行程的平台說明文件: