從 Android 13 開始,Android 便內建超寬頻 (UWB) 無線電技術的預設架構實作,這項技術可在支援的裝置之間提供高度安全且精確的測距功能。平台 Android 開放原始碼計畫 UWB 堆疊可做為裝置製造商的選用模組。如要進一步瞭解這個模組,請參閱「模組:UWB」。
建築
UWB 堆疊包含 UWB 主線模組和 UWB 晶片供應商提供的 HAL 實作,如圖 1 所示。
圖 1. UWB 堆疊架構
Android 開放原始碼計畫堆疊
AOSP UWB 堆疊以選用模組 com.google.android.uwb
的形式封裝,包含下列元件:
- UWB 平台 API 途徑
- 程式碼位置:
packages/modules/Uwb/framework
- 程式碼位置:
- 支援資料庫
- 程式碼位置:
packages/modules/Uwb/service/support_lib
- 程式碼位置:
- UwbService 層和 Common Service Management Layer (CSML) 定義的元件,由 FiRa 定義
- 程式碼位置:
packages/modules/Uwb/service
- 程式碼位置:
- Rust 原生 UCI 層
- 代碼位置:
external/uwb
- 代碼位置:
- 根據 FiRa 定義的 UWB 指令介面 (UCI) 規格,建立 UWB HAL 介面
- 程式碼位置:
hardware/interfaces/uwb
- 程式碼位置:
供應商元件
供應商堆疊包含 UWB HAL 供應商實作項目、UWB 驅動程式和 UWB 裝置。
UWB 適用的 API 介面
UWB 堆疊包含系統應用程式和第三方應用程式的 API 途徑。
系統應用程式
裝置製造商會使用 android.uwb.UwbManager
系統 API 介面,允許系統應用程式進行低階存取權。如要使用這個 API 介面,系統應用程式必須使用支援資料庫 (packages/modules/Uwb/service/support_lib
)。
第三方應用程式
第三方應用程式會使用 Jetpack UWB 公用 API 介面 androidx.core.uwb
。詳情請參閱「超寬頻通訊」。
驗證
如要驗證 UWB 的導入方式,請確認裝置通過 /cts/tests/uwb
底下的 CTS 測試。