reference:
0. android Wi-Fi overview
使用 Wi-Fi 服务的应用通过 Binder 直接与各种 Wi-Fi 服务进行通信。Wi-Fi 服务在系统服务中运行,并通过 HIDL 与 HAL 进行通信。现在HIDL接口都是用aidl描述的。
还提供了:
- passpoint:是一种 Wi-Fi 联盟 (WFA) 协议,可让移动设备发现提供互联网访问权限的 Wi-Fi 热点并完成身份验证。
- Wi-Fi Easy Connect:引导和身份验证使用 URI 进行配置;URI 通过扫描二维码(使用摄像头)获得或在带外进行配置(例如使用 BLE 或 NFC)。
0.1 整体架构
- Wifi框架:应用调用的api接口:android.net.wifi WifiManager.java
- WiFi服务:在系统服务中运行,这类服务位于
packages/modules/Wifi/service/
中。Wi-Fi 服务通过 HIDL 与 Wi-Fi HAL 进行通信。WiFi服务有很多:- WLAN 服务:用于控制 WLAN 基础架构模式(包括 STA 和 AP)的主要机制。
- WLAN 点对点服务:管理 WLAN P2P直连模式。
- WLAN 感知服务:管理 WLAN 感知模式。
- Wi-Fi RTT 服务:管理 IEEE 802.11mc FTM 功能。
- Wi-Fi 框架还包含一个独立的 wificond 进程,该进程位于
system/connectivity/wificond
中。wificond 进程通过标准的nl80211
命令与 Wi-Fi 驱动程序进行通信。 - wifi hal: 供应商 vendor HAL、supplicant HAL 和 Hostapd HAL。
1. android提供的Wi-Fi功能:
1.1 sta
1.2 p2p
支持在断开网络的情况下,在可信设备和应用之间共享高吞吐量数据。