Android, aşağıdakiler de dahil olmak üzere çeşitli Wi-Fi protokolleri ve modları için destek içeren varsayılan bir Android çerçeve uygulaması sağlar:
- Wi-Fi altyapısı (STA)
- Bağlı veya yalnızca yerel modlarda Wi-Fi erişim noktası (Soft AP)
- Wi-Fi Doğrudan (p2p)
- Wi-Fi Uyumlu (NAN)
- Wi-Fi RTT (IEEE 802.11mc FTM)
Wi-Fi hizmetlerini kullanan bir uygulama, Binder aracılığıyla çeşitli Wi-Fi hizmetleriyle doğrudan iletişim kurar. Wi-Fi hizmetleri Sistem Hizmetinde çalışır ve sağlanan HIDL ve AIDL arayüzleri üzerinden HAL ile iletişim kurar. Bu şema Android Wi-Fi yığınının genel yapısını göstermektedir.
Şekil 1. Android Wi-Fi mimarisi
Uygulama çerçevesi
Uygulama çerçevesi düzeyinde, Wi-Fi çerçevesi ve donanımıyla etkileşim kurmak için çeşitli android.net.wifi API'lerini kullanan uygulama kodu bulunur. Dahili olarak bu kod, Binder IPC mekanizması aracılığıyla Wi-Fi işlemini çağırır.
Wi-Fi hizmetleri
Wi-Fi hizmetleri Sistem Hizmetinde çalışır ve packages/modules/Wifi/service/
içinde bulunur. Wi-Fi hizmeti Wi-Fi HAL ile AIDL üzerinden iletişim kurar.
Çeşitli Wi-Fi hizmetleri vardır:
- Wi-Fi Hizmeti: Wi-Fi altyapı modlarını (hem STA hem de AP) kontrol etmek için birincil mekanizma.
- Wi-Fi P2P Hizmeti: Wi-Fi Direct modunu yönetir.
- Wi-Fi Aware Hizmeti: Wi-Fi Aware modunu yönetir.
- Wi-Fi RTT Hizmeti: IEEE 802.11mc FTM işlevini yönetir.
Wi-Fi çerçevesi aynı zamanda system/connectivity/wificond
konumunda bulunan wificond adlı bağımsız bir işlemi de içerir. Wificond işlemi, Wi-Fi sürücüsü ile standart nl80211
komutları üzerinden iletişim kurar.
Wi-Fi HAL'leri
Wi-Fi çerçevesinde üç farklı arayüzle temsil edilen üç Wi-Fi HAL yüzeyi bulunur: Satıcı HAL, Talep Eden HAL ve Hostapd HAL.
Çeşitli HAL'lerin uygulamalarıyla ilgili ayrıntılar için Wi-Fi HAL'e bakın.