Android menyediakan implementasi kerangka kerja Android default yang mencakup dukungan untuk berbagai protokol dan mode Wi-Fi, termasuk:
- Infrastruktur Wi-Fi (STA)
- Hotspot Wi-Fi (Soft AP) dalam mode tethered atau hanya lokal
- Wi-Fi Langsung (p2p)
- Sadar Wi-Fi (NAN)
- Wi-Fi RTT (IEEE 802.11mc FTM)
Aplikasi yang menggunakan layanan Wi-Fi berkomunikasi langsung dengan berbagai layanan Wi-Fi melalui Binder. Layanan Wi-Fi berjalan di Layanan Sistem dan berkomunikasi dengan HAL melalui HIDL. Diagram ini menunjukkan struktur umum tumpukan Wi-Fi Android.
Gambar 1. Arsitektur Wi-Fi Android
Kerangka aplikasi
Pada tingkat kerangka aplikasi adalah kode aplikasi, yang menggunakan berbagai API android.net.wifi untuk berinteraksi dengan kerangka kerja dan perangkat keras Wi-Fi. Secara internal, kode ini memanggil proses Wi-Fi melalui mekanisme Binder IPC.
Layanan Wi-Fi
Layanan Wi-Fi berjalan di Layanan Sistem, dan terletak di packages/modules/Wifi/service/
. Layanan Wi-Fi berkomunikasi dengan Wi-Fi HAL melalui HIDL.
Ada berbagai layanan Wi-Fi:
- Layanan Wi-Fi: Mekanisme utama untuk mengontrol mode infrastruktur Wi-Fi (baik STA dan AP).
- Layanan Wi-Fi P2P: Mengelola mode Wi-Fi Direct.
- Layanan Wi-Fi Aware: Mengelola mode Wi-Fi Aware.
- Layanan RTT Wi-Fi: Mengelola fungsionalitas IEEE 802.11mc FTM.
Kerangka kerja Wi-Fi juga mencakup proses yang berdiri sendiri, wificond , yang terletak di system/connectivity/wificond
. Proses wificond berkomunikasi dengan driver Wi-Fi melalui perintah nl80211
standar.
Wi-Fi HAL
Kerangka kerja Wi-Fi memiliki tiga permukaan HAL Wi-Fi yang diwakili oleh tiga paket HIDL yang berbeda: Vendor HAL, Supplicant HAL, dan Hostapd HAL.
Untuk detail tentang implementasi berbagai HAL, lihat HAL Wi-Fi .