Android 版本資訊的 Driver SDK

本節包含 Driver SDK for Android 的版本資訊。

5.0.0 版 (2023 年 9 月 12 日)

依附元件和設定變更

  • 已將 Navigation SDK 更新至 5.x 版。
  • 已將 minSdkVersion 升級至 API 23。
  • 已將 Kotlin 版本升級至 1.9.0。
  • 新增了 Room 的依附元件。
  • 使用 Driver SDK 的應用程式現在必須採用 API 31 以上的 targetSdkVersion
  • 使用驅動程式 SDK 的應用程式現在必須啟用 Java 8 程式庫支援功能。如需更新操作說明,請前往 https://developer.android.com/studio/write/java8-support。
  • 使用 Proguard 或 Dexguard 的應用程式,必須遷移至 R8。詳情請參閱 https://developer.android.com/build/shrink-code。
  • 使用驅動程式 SDK 的應用程式必須啟用脫糖功能。如需操作說明,請前往 https://developer.android.com/studio/write/java8-support#library-desugaring。

修正錯誤

  • 修正 enableLocationTracking 同步問題。
  • 推出新的 DriverStatusListener 介面,可在例外狀況狀態更新中回報原因。
  • 修正驅動程式的靜止不動問題 (從 4.99.0 版開始提供)。

4.99.0 版 (2023 年 8 月 9 日)

  • 支援多種版本的 NavSDK 依附元件。 ** 支援 4.5.0 版 (但不含) 5.0.0 版。
  • 避免在車輛靜止時自行降低預計到達時間。這項變更會逐步實施,因此並非所有應用程式都會同時看到這項變更。

4.5.0 版 (2023 年 5 月 12 日)

  • 將 Navigation SDK 依附元件更新至 4.5 版。請注意,Navigation SDK 的群組和構件 ID 已變更。

4.4.3 版 (2023 年 3 月 20 日)

依附元件變更

  • 將 Navigation SDK 依附元件升級至 4.4.1 版。

4.4.2 版 (2023 年 2 月 15 日)

修正錯誤

  • 縮短 SDK 遇到暫時性連線問題時的網路復原時間。這項功能目前以實驗的形式推出。

  • 捨棄僅包含「原始」的 UpdateVehicle 要求或 HTTP/HTTPS 位置

  • 修正「Route Overview」Alpha 版 API。

4.4.1 版 (2022 年 11 月 18 日)

修正錯誤

  • 修正流量上傳邏輯的錯誤。

其他異動

  • 內部改善要求標頭和狀態碼報告。

4.4.0 版 (2022 年 9 月 21 日)

修正錯誤

  • 修正導致「使用 Google 地圖行車功能」的錯誤如果未清除 API 執行個體,系統就不會移除通知。

依附元件變更

  • 將 Navigation SDK 依附元件升級至 4.2.2 版。

4.3.0 版 (2022 年 8 月 24 日)

內部改善。

公告:凍結對 Android 5 的支援 (2022 年 7 月 21 日)

如果是最新的 SDK 版本 (4.2.0 版),我們 可為在 Android 5 上執行的應用程式額外提供一年支援服務, API 級別 21 和 22。

也就是說:

  • 在 Android 應用程式上執行的 Navigation SDK 和 Driver SDK 將支援 最低 Android 5 (API 級別 21) 至 2023 年 6 月 30 日。
  • 2023 年 6 月 30 日之後,我們只支援 23 以上版本的 Android API 級別。 也就是說,我們將停止支援 Android API 級別 21 和 22 。這表示與 Android 21 相關的錯誤 否則我們將不會修正 SDK 版本 (包括 4.x) 中的 22 和 22,也不會修正 保證 SDK 能正常運作。

本聲明會覆寫 Android 21 和 22 從 6 月開始支援凍結通知 自 2021 年 10 月 18 日起,21、2021 年和 Android 23、24 和 25 版都支援凍結功能。

4.2.0 版 (2022 年 6 月 8 日)

依附元件變更

  • 將 Nav SDK 依附元件升級至 4.1.3 版。
  • 將支援的最低 Android API 級別降級至 21。

4.1.0 版 (2022 年 4 月 28 日)

API 更新

  • 已將 Task 物件的 parentId 屬性重新命名為 trackingId。舊 資源仍存在,但已淘汰。

4.0.0 版 (2021 年 11 月 29 日)

此版本支援的最低 Android API 級別為 23。

API 更新

這個版本的 Android Driver SDK 已更新為以下元件: 並輸入變更內容

VehicleStops API 變更

VehicleStop 物件現在會參照 TaskInfo 而非 List 的 Task 如需儲存大量結構化物件 建議使用 Cloud Bigtable如需工作狀態 最好在應用程式的程式碼中進行追蹤

  • 已新增類別:TaskInfo

  • 已將 VehicleStopgetTasks 函式替換為 getTaskInfoList敬上 函式。

  • 已將 VehicleStop.BuildersetTasks 函式替換為 setTaskInfoList敬上 函式。

當機監控

新增當機監控和回報功能,可協助提升 SDK 穩定性。 此功能預設為啟用,但即使您呼叫,也可停用 setAbnormalTerminationReportingEnabled(),並傳遞 false 的值。 再初始化 SDK。

非同步 getRemainingVehicleStops

驗證

AuthTokenContext 介面中移除不必要的屬性。 ServiceType 已淘汰您現在只需要取得 包含車輛 ID 和工作 ID,而非使用 ServiceType

2021 年 10 月 18 日 - 凍結 API 級別 23、24 和 25 的支援

閱讀 10 月 18 日公告

為了因應內部依附元件的變更,Android API 級別 23 新版將不支援 24 和 25 (Android 6、7.0 和 7.1) Navigation 和 Driver SDK for Android 」

Android 適用的 Navigation 和驅動程式 SDK 版本自第 3 版起 2022 年第 4 季起僅支援 Android API 級別 26。

使用 v4.x 以下版本的 Navigation 和驅動程式 SDK 建構的應用程式版本 Android 將可繼續在搭載 Android API 級別 25 的裝置上運作 下方。

3.0.4 版 (2021 年 7 月 28 日)

功能

這個版本推出後, Driver SDK 已正式上線 離開 Navigation SDK詳情請參閱 遷移指南

API 更新

新增了下列方法:

RidesharingDriverApi.getDriverSdkVersion()

穩定性與錯誤修正

回報 PERMISSION_DENIED 項錯誤,而非歸類為 發生連線錯誤。

淘汰公告 (2021 年 6 月 21 日)

本公告說明 Android 適用的 Driver SDK 的淘汰事宜 和 Navigation SDK for Android。 本公告也發出了必要服務公告 (MSA) 受影響的客戶

簡化客戶整合流程,並加速提供實用服務 我們會將 Navigation SDK 拆分為 Android 適用的驅動程式 SDK 可分為兩種不同的二進位檔:

  • 適用於 Android 的 Navigation SDK, 並為司機提供實用功能
  • 適用於 Android 的驅動程式 SDK,可讓您使用機群 提供有狀態的網路服務,可提供行程或工作進度和分配等服務。

請注意,Android Driver SDK for Android 必須具備以下依附元件: 適用於 Android 核心轉送函式的 Navigation SDK。

異動內容

第 3 版中的重大異動如下:

  • 兩個二進位檔,而非一個二進位檔。
  • 更清楚瞭解 Android 類別的 Driver SDK 套件定義。
  • Navigation SDK for Android 包含 Maps SDK for Android 隨附的包裝 (在 Android 第 2 版 Navigation SDK 中使用)。
    • 這使地圖和導覽功能在同一地圖上並存 (例如在 NavigationView 上繪製折線) 並降低記憶體用量 因為系統使用的是單張地圖,而非兩個地圖
    • 適用於 Android 3.0 的 Navigation SDK 缺少與 Navigation SDK for Android,但 3.2 版可以解決大多數的問題。 請參閱這篇文章時間。
  • 記錄功能有助於我們針對可能發生的問題進行偵錯。

下列方法在第 3 版中也已移除, 標示為已淘汰,且已使用其他解決方案 已存在:

  • 下列 Nav/Driver SDK 方法已在 v1.16 中淘汰,該方法已於 2020 年 8 月 10 日,並且已在 3.0 版中移除:
    • Waypoint#fromLatLng(*)
    • Waypoint#fromPlaceId(*)
    • Navigator#startGuidance(resumeIntent)
    • NavigationApi#initForegroundServiceManager(*)
  • 為求完整起見,請注意,我們移除了一些方法 的功能。其中大多數內容都是合併 以及 Android 的 Navigation SDK 與 Maps SDK for Android。詳情請參閱 遷移指南 有助於深入瞭解這些變化

淘汰 Android 適用的驅動程式 SDK 和 Navigation SDK v1.x 版

Nav/Driver SDK 第 1 版於 2018 年推出,我們的第 3 版很快就會推出 因此,請您務必淘汰第 1 版,以免 支援許多主要版本

無須支援額外版本就能省下寶貴時間 我們更好地支援最新的主要版本,並開發更多 對客戶至關重要

因此,Nav/Driver SDK v1.x 現已淘汰,不會再進行維護 。

請花一點時間查看 SDK 版本中的淘汰機制如何運作

閱讀已撤銷的公告

即將推出的 Navigation SDK for Android 4.0 版 Android 驅動程式 SDK 最低支援 [Android 6.0 (API 級別 23)](https://developer.android.com/studio/releases/platforms#6.0){: .external}。 目前支援的最低版本為 Android 5.0 (API 級別 21)。 我們預計在 2021 年第 4 季推出 4.0 版。因此:

  • 如果應用程式版本使用 v4.x 之前的版本,仍可繼續運作 Android 21 和 22 裝置。你的駕駛應用程式整合了 Google 中的 SDK 仍可在搭載 Android 21 以上版本的裝置上運作。 這與以往相同。
  • 使用 Android Driver SDK for Android 和 Android 4.x 適用的 Navigation SDK (指定 2021 年第 4 季之後,無法再安裝 搭載 Android 21 和 22 的裝置。第 4.x 版會在最低 Android 6.0 (API 級別 23) 上執行, 因此,使用即將推出的 v4.x 版本建立的應用程式版本 搭載 Android 23 以上版本的裝置。再複習一下 這表示我們的 SDK 相關變更,以及您所做的任何應用程式變更 因此無法觸及搭載 Android 21 和 22 裝置的司機。

適用於 Android v3 和 Android 版的 Navigation SDK 版本 您想升級的 Android 第 3 版驅動程式 SDK ,以及這些功能的推出時間。

你使用哪些驅動程式平台功能? 您使用這些功能嗎? 那麼,您應該升級到的第一個可用版本是... 預計出貨時間
(隨時可能變更)
遷移連結
僅限導覽
(NavSDK 方法)
NavSDK 3.0.1 版 現在 使用指南
NavSDK v3.5 (預計) 2021 年 9 月
導覽和機群引擎追蹤 (NavSDK 和 DriverSDK 方法) Nav SDK 3.0 版和驅動程式 SDK 3.0 版 版本提供 3.0 版遷移指南
NavSDK v3.x 和 DriverSDK v3.0

如要繼續使用已移除的方法,您可以繼續使用 v1.x,但不會使用 預期支援或維護作業 (請參閱下一節)。

建議您改用 3.x 版。因此:

* 的最新版本 v1.x 將於 2021 年第 4 季推出 (因此第 1 版是 就會啟動「功能凍結」)。

* 此最新版本在 2022 年 6 月 21 日前都能修補 6 個月。 此後,我們將無法回應錯誤或功能要求 這兩個版本

請花點時間查看下表,以及 [遷移指南](/maps/documentation/navigation-sdk-android/v2/migration) 來協助您瞭解這些變更

何時能做什麼?

如果您目前使用... 您使用這些功能嗎? 立即升級 在 2021 年 9 月升級 遷移連結
v1.x
(「不是」使用 FleetEngine.java / 驅動程式功能)
NavSDK 3.0 版 使用指南
沒有選項 NavSDK 3.x
v1.x
(使用 FleetEngine.java / 驅動程式功能)
沒有選項 NavSDK 3.x +
DriverSDK 3.x
上述指南,以及發布時提供的驅動程式 3.0 版遷移指南。

建議你使用搭載 Android 21 和 22 的裝置通知駕駛人。 升級至新版 Android (最低 Android 6.0) 整合 Android 適用的 Driver SDK 和 Android 專用的 Navigation SDK 安裝到驅動程式應用程式中。

1.15.3 版 (2020 年 10 月 9 日)

API 更新

  • Driver SDK 現在訂閱 Navigation SDK 以取得路況更新。 再傳送到 Fleet Engine API

穩定性與錯誤修正

  • 已修正 gRPC 執行階段當機。

v1.15.2

功能

新增停止持續通知的功能。如果位置回報功能 在 Fleet Engine 執行個體中停止,導覽已在 Navigator 停止。 所有導覽事件監聽器均未註冊;NavigationFragmentNavigationView已暫停,

穩定性與錯誤修正

  • 修正了 Fleet Engine 執行個體遭到清除時,導致系統擲回例外狀況的錯誤。

1.15.1 版 (2020 年 5 月 12 日)

功能

初步分析 1.15.0 資料指出有顯著改善 穩定的地區報表 (減少「停滯」位置)。這個修補程式修正後 可讓位置回報功能繼續運作ANR 問題與系統無關 我們改進的部分

穩定性與錯誤修正

  • 修正有時會導致問題開頭直線的錯誤 。
  • 修正回報位置時可能導致 ANR 的錯誤 SDK 淘汰也就是 onArrival() 項改善措施。 容易鎖定爭用情形我們妥善重現 ANR 並確認問題修正完畢 問題。用於產生 ANR 的修改版測試應用程式已執行 8 小時 而不會發生 ANR

1.15.0 版 (2019 年 3 月 23 日)

功能

  • 針對開始、路線偏離和抵達事件提供導航指引狀態 有助於改善車輛位置追蹤功能
  • 新增可持續獨立取得道路背景位置的功能 導覽狀態。
  • 新增有關預路前位置資訊的其他相關資訊,例如準確性。

穩定性和錯誤修正

  • 已將 navsdk 的 minSdkVersion 提高至 19。
  • 修正會導致經緯度路徑點名稱在 伺服器端反向地理編碼失敗。

v1.14.2 版 (2019 年 2 月 2 日)

功能

  • 防止 DriverSDK 傳送 0,0 個位置至 Fleet Engine (較優) 歷程分享及分配地點輸入)。
  • 提供額外記錄,以改善停滯的位置問題及減少 歷程共用備用方案
  • 除非間隔變更,否則忽略對 setLocationReportingInterval() 的重複呼叫。
  • 已針對 setReportingInterval() 方法更新目標的 javadocs 令人不耐煩地停止重複呼叫此方法 的間隔
  • 已提升 API 29 的位置可靠性。

v1.13.0

穩定性與錯誤修正

  • 新增 okhttp 的依附元件,以便用戶端將其新增至 Gradle 建構作業。

v1.11.7 版 (2019 年 10 月 18 日)

穩定性與錯誤修正

  • 現在的位置更新將會在 onArrival() 觸發以下事件後繼續更新: 指定目的地。
  • 預設通知 (免費導覽模式中的常數字串) 會與 已設定導航通知的色彩配置。若需更多資訊,請參閲 共用永久通知
  • 解決延遲位置更新事件可能導致 錯誤位置更新,導致真實環境更新,例如位於 以用於路線的起點

1.11.6 版 (2019 年 10 月 4 日)

API 更新

  • 導入一系列變更,確保驅動程式 SDK 能繼續執行 系統會在網路故障後迅速更新位置。網路連線後 已還原,位置更新作業會從下個排定位置重新開始 更新。

穩定性與錯誤修正

  • setVehicleState()敬上 現在會立即傳回系統現在會在背景更新 FleetEngine 。解決應用程式無回應 (ANR) 問題。
  • 修正導致旅程共用路線顯示為 使用舊版 Consumer SDK可確保不會 單程路線控點是由驅動程式 SDK 新增至路線。