אנדרואיד מספקת יישום ברירת מחדל של מסגרת אנדרואיד הכוללת תמיכה בפרוטוקולי ומצבי Wi-Fi שונים, כולל:
- תשתית Wi-Fi (STA)
- נקודה חמה של Wi-Fi (AP רך) במצב קשור או במצב מקומי בלבד
- Wi-Fi Direct (p2p)
- Wi-Fi Aware (NAN)
- Wi-Fi RTT (IEEE 802.11mc FTM)
אפליקציה המשתמשת בשירותי Wi-Fi מתקשרת ישירות עם שירותי ה-Wi-Fi השונים באמצעות Binder. שירותי ה-Wi-Fi פועלים בשירות המערכת ומתקשרים עם ה-HAL דרך ממשקי ה-HIDL וה-AIDL המסופקים. תרשים זה מציג את המבנה הכללי של ערימת ה-Wi-Fi של אנדרואיד.
איור 1. ארכיטקטורת Wi-Fi של אנדרואיד
מסגרת יישום
ברמת מסגרת היישום נמצא קוד יישום, המשתמש בממשקי ה-API השונים של android.net.wifi כדי ליצור אינטראקציה עם מסגרת ה-Wi-Fi והחומרה. באופן פנימי, קוד זה קורא לתהליך ה-Wi-Fi באמצעות מנגנון Binder IPC.
שירותי Wi-Fi
שירותי ה-Wi-Fi פועלים בשירות המערכת, וממוקמים 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 מתקשר עם מנהל ההתקן של ה-Wi-Fi באמצעות פקודות nl80211
סטנדרטיות.
Wi-Fi HALs
למסגרת ה-Wi-Fi יש שלושה משטחי Wi-Fi HAL המיוצגים על ידי שלושה ממשקים שונים: ספק HAL, Supplicant HAL ו-Hostapd HAL.
לפרטים על יישומים של HALs השונים, ראה Wi-Fi HAL .