اندروید یک چارچوب پیشفرض اندروید را ارائه میکند که شامل پشتیبانی از پروتکلها و حالتهای مختلف Wi-Fi، از جمله:
- زیرساخت Wi-Fi (STA)
- نقطه اتصال Wi-Fi (Soft AP) در حالت های متصل یا محلی
- Wi-Fi Direct (p2p)
- Wi-Fi Aware (NAN)
- Wi-Fi RTT (IEEE 802.11mc FTM)
برنامه ای که از خدمات Wi-Fi استفاده می کند مستقیماً از طریق Binder با سرویس های Wi-Fi مختلف ارتباط برقرار می کند. سرویسهای Wi-Fi در سرویس سیستم اجرا میشوند و از طریق رابطهای HIDL و AIDL با HAL ارتباط برقرار میکنند. این نمودار ساختار کلی پشته وای فای اندروید را نشان می دهد.
شکل 1. معماری Wi-Fi اندروید
چارچوب برنامه
در سطح چارچوب برنامه، کد برنامه وجود دارد که از API های مختلف android.net.wifi برای تعامل با چارچوب و سخت افزار Wi-Fi استفاده می کند. در داخل، این کد فرآیند Wi-Fi را از طریق مکانیزم Binder IPC فراخوانی می کند.
خدمات وای فای
سرویسهای Wi-Fi در System Service اجرا میشوند و در packages/modules/Wifi/service/
قرار دارند. سرویس Wi-Fi با Wi-Fi HAL از طریق AIDL ارتباط برقرار می کند.
خدمات 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/wificond
قرار دارد. فرآیند wificond از طریق دستورات استاندارد nl80211
با درایور Wi-Fi ارتباط برقرار می کند.
هال های وای فای
چارچوب Wi-Fi دارای سه سطح Wi-Fi HAL است که با سه رابط مختلف نشان داده شده است: Vendor HAL، Supplicant HAL و Hostapd HAL.
برای جزئیات در مورد اجرای HAL های مختلف، Wi-Fi HAL را ببینید.
،اندروید یک چارچوب پیشفرض اندروید را ارائه میکند که شامل پشتیبانی از پروتکلها و حالتهای مختلف Wi-Fi، از جمله:
- زیرساخت Wi-Fi (STA)
- نقطه اتصال Wi-Fi (Soft AP) در حالت های متصل یا محلی
- Wi-Fi Direct (p2p)
- Wi-Fi Aware (NAN)
- Wi-Fi RTT (IEEE 802.11mc FTM)
برنامه ای که از خدمات Wi-Fi استفاده می کند مستقیماً از طریق Binder با سرویس های Wi-Fi مختلف ارتباط برقرار می کند. سرویسهای Wi-Fi در سرویس سیستم اجرا میشوند و از طریق رابطهای HIDL و AIDL با HAL ارتباط برقرار میکنند. این نمودار ساختار کلی پشته وای فای اندروید را نشان می دهد.
شکل 1. معماری Wi-Fi اندروید
چارچوب برنامه
در سطح چارچوب برنامه، کد برنامه وجود دارد که از API های مختلف android.net.wifi برای تعامل با چارچوب و سخت افزار Wi-Fi استفاده می کند. در داخل، این کد فرآیند Wi-Fi را از طریق مکانیزم Binder IPC فراخوانی می کند.
خدمات وای فای
سرویسهای Wi-Fi در System Service اجرا میشوند و در packages/modules/Wifi/service/
قرار دارند. سرویس Wi-Fi با Wi-Fi HAL از طریق AIDL ارتباط برقرار می کند.
خدمات 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/wificond
قرار دارد. فرآیند wificond از طریق دستورات استاندارد nl80211
با درایور Wi-Fi ارتباط برقرار می کند.
هال های وای فای
چارچوب Wi-Fi دارای سه سطح Wi-Fi HAL است که با سه رابط مختلف نشان داده شده است: Vendor HAL، Supplicant HAL و Hostapd HAL.
برای جزئیات در مورد اجرای HAL های مختلف، Wi-Fi HAL را ببینید.