總覽

Android 提供了預設的 Android 框架實現,其中包括對各種 Wi-Fi 協定和模式的支持,包括:

  • Wi-Fi 基礎架構 (STA)
  • 線上或僅限本地模式的 Wi-Fi 熱點(軟體 AP)
  • Wi-Fi 直連 (p2p)
  • Wi-Fi 感知 (NAN)
  • Wi-Fi RTT (IEEE 802.11mc FTM)

使用 Wi-Fi 服務的應用程式透過 Binder 直接與各種 Wi-Fi 服務進行通訊。 Wi-Fi 服務在系統服務中運行,並透過提供的 HIDL 和 AIDL 介面與 HAL 進行通訊。此圖顯示了 Android Wi-Fi 堆疊的一般結構。

無線網路架構

圖 1. Android Wi-Fi 架構

應用框架

應用程式框架層級是應用程式程式碼,它使用各種android.net.wifi API 與 Wi-Fi 框架和硬體進行互動。在內部,這段程式碼透過Binder IPC機制呼叫Wi-Fi進程。

無線網路服務

Wi-Fi 服務在系統服務中運行,位於packages/modules/Wifi/service/中。 Wi-Fi 服務透過 AIDL 與 Wi-Fi HAL 進行通訊。

有多種 Wi-Fi 服務:

  • Wi-Fi 服務:控制 Wi-Fi 基礎架構模式(STA 和 AP)的主要機制。
  • Wi-Fi P2P 服務:管理 Wi-Fi Direct 模式。
  • Wi-Fi Aware 服務:管理 Wi-Fi Aware 模式。
  • Wi-Fi RTT 服務:管理 IEEE 802.11mc FTM 功能。

Wi-Fi 框架還包括一個獨立進程wificond ,位於system/connectivity/wificondwificond進程透過標準nl80211命令與 Wi-Fi 驅動程式進行通訊。

Wi-Fi HAL

Wi-Fi 框架有三個 Wi-Fi HAL 表面,由三個不同的介面表示:供應商 HAL、請求者 HAL 和 Hostapd HAL。

有關各種 HAL 實現的詳細信息,請參閱Wi-Fi HAL