בו-זמניות של AP/AP ב-Wi-Fi

ב-Android 12 נוספה תכונה של הפעלה בו-זמנית של נקודת גישה (AP) ל-Wi-Fi, שמאפשרת למכשירים ליצור שני ממשקי נקודת גישה (AP). התכונה הזו מאפשרת למכשירים לתמוך בשיתוף אינטרנט (tethering) דרך נקודה חמה (soft AP) של Wi-Fi עם פס כפול בו-זמנית (DBS). לפרטים על תמיכה בשיתוף אינטרנט בין מכשירים דרך נקודת Wi-Fi אחת לשיתוף אינטרנט, אפשר לעיין במאמר בנושא נקודת Wi-Fi לשיתוף אינטרנט (Soft AP).

בדף הזה מתואר אופן הפעולה של המכשיר כשהתכונה הזו מופעלת, וגם פרטי הטמעה ליצרנים ולספקים של מכשירים.

איך זה עובד

אם המכשיר תומך ב-Wi-Fi AP/AP concurrency, הוא יכול ליצור שני ממשקי AP, למשל, ממשק אחד שפועל בתדר ‎2.4 GHz וממשק אחד שפועל בתדר ‎5 GHz. לאחר מכן, הלקוחות יכולים להתחבר לכל אחד מממשקי ה-AP.

ה-Wi-Fi HAL יוצר ממשק מגשר יחיד עם שני ממשקי ה-AP ומציג אותו ל-Wi-Fi ולערימת הקישוריות כשהערימה מפעילה AP רך. אחרי שמפעילים את ה-AP הרך, ה-Wi-Fi HAL מציין שיש שני ממשקים זמינים ומעדכן את המידע (כמו ערוץ הפעולה, רוחב הפס ו-BSSID) לכל AP.

כדי לחסוך בחשמל, המסגרת משביתה נקודת גישה לא בשימוש (2.4 GHz,‏ 5 GHz או 6 GHz) אחרי תקופה של חוסר פעילות. ה-framework מחשיב נקודת גישה כלא פעילה כשאין לקוח שמחובר אליה. יצרני המכשירים יכולים להתאים אישית את משך התקופה הזו של חוסר פעילות. מידע נוסף זמין במאמר בנושא התאמה אישית של תקופת חוסר הפעילות.

המכשירים תומכים ב-Wi-Fi AP/AP concurrency באמצעות אחת מההגדרות הבאות של נקודות גישה וירטואליות מגשרות:

  • הגדרת שני תדרים (הערוץ נבחר אוטומטית על ידי המסגרת או מנהל ההתקן)
  • הגדרת שני ערוצים בנקודת גישה דו-פסית

דרישות

כדי להטמיע את התכונה 'נקודת גישה ל-Wi-Fi/הפעלה בו-זמנית של נקודות גישה', המכשירים צריכים לעמוד בדרישות הבאות:

  • שבב ה-Wi-Fi או הקושחה צריכים לתמוך בשני חיבורים בו-זמניים לנקודות גישה. הקושחה צריכה לתמוך בכל השילובים של ערוצים ופסים בשני החיבורים. כדי למנוע בעיות בביצועים, מומלץ להשתמש בשבב Wi-Fi עם יכולת DBS‏ 2x2+2x2.

  • המכשיר צריך לתמוך בשיטות הבאות ב-HAL של ספק ה-Wi-Fi:

    • IWifiChip.createBridgedApIface()
    • IWifiChip.removeIfaceInstanceFromBridgedApIface()
    • IWifiApIface.resetToFactoryMacAddress()
    • IWifiApIface.getBridgedInstances()

הטמעה

כדי להטמיע את התכונה 'נקודת גישה ל-Wi-Fi/מקבילות של נקודת גישה':

  1. מפעילים לפחות אחת מהפונקציות הבאות (מושבתות כברירת מחדל) באמצעות שכבות-על של משאבים בזמן ריצה:

    • config_wifiBridgedSoftApSupported: תמיכה במספר נקודות גישה שמגשרות ביניהן.
    • config_wifiStaWithBridgedSoftApConcurrencySupported: תומך בהפעלה בו-זמנית של תחנה (STA) ומספר נקודות גישה (AP) מגשרות.
  2. במכשירים שמשתמשים ב-AIDL Wi-Fi HAL או ב-HIDL Wi-Fi HAL 1.6, צריך להגדיר את AP_BRIDGED בשילוב של ממשק Wi-Fi HAL. לפרטים נוספים, ראו הפעלה של כמה ממשקי Wi-Fi בו-זמנית.

  3. מגדירים את התצורה של נקודת הגישה הווירטואלית המגשרת על ידי קריאה לאחת מהשיטות הבאות:

  4. רישום קריאה חוזרת כדי לקבל את יכולות המכשיר באמצעות WifiManager#registerSoftApCallback. הקריאה החוזרת SoftApCallback מספקת את השיטות הבאות להגדרת נקודת גישה וירטואלית מגשרת:

התאמה אישית של תקופת חוסר הפעילות

כדי להתאים אישית את משך תקופת חוסר הפעילות, מגדירים את שכבת העל הבאה, שנמצאת בpackages/modules/Wifi/service/ServiceWifiResources/res/values/config.xml:

  • config_wifiFrameworkSoftApShutDownIdleInstanceInBridgedModeTimeoutMillisecond: הערך שמוגדר כברירת מחדל לזמן הקצוב לתפוגה של ההשבתה. תקף רק אם המדיניות SoftApConfiguration#setBridgedModeOpportunisticShutdownEnabled מופעלת.

  • (זמין מגרסה 13) config_wifiFrameworkSoftApDisableBridgedModeShutdownIdleInstanceWhenCharging: הגדרה שקובעת אם להשבית את טיימר הכיבוי במצב חוסר פעילות בזמן טעינה.