רשת אלחוטית ישירה

תכונת Wi-Fi Direct , הידועה גם בשם Wi-Fi P2P, מאפשרת למכשירים תומכים לגלות ולהתחבר זה לזה ישירות באמצעות פרוטוקול Wi-Fi Direct ללא גישה לאינטרנט או לרשת סלולרית. תכונה זו, הבנויה על מפרט Wi-Fi Alliance (WFA) Wi-Fi Direct , מאפשרת שיתוף של נתונים בתפוקה גבוהה בין מכשירים ואפליקציות מהימנות שנמצאות אחרת מחוץ לרשת.

דוגמאות ומקור

כדי להשתמש בתכונה זו, יצרני המכשירים חייבים ליישם את ממשקי ספק ה-Wi-Fi וה-Supplicant HAL.

באנדרואיד 13, ממשק ה-Supplicant משתמש ב-AIDL עבור הגדרת HAL. באנדרואיד 14 ומעלה, ממשק הספק HAL משתמש ב-AIDL. באנדרואיד 12 ומטה, ממשקי ה-HAL של המבקש והספק מוגדרים באמצעות HIDL.

משטחי ה-Wi-Fi HAL הבאים נדרשים כדי להשתמש בתכונת ה-Wi-Fi Direct:

  • hardware/interfaces/wifi/aidl או, hardware/interfaces/wifi/1.3 ומעלה
  • hardware/interfaces/wifi/supplicant/aidl או, hardware/interfaces/wifi/supplicant/1.2 ומעלה

יישום

יצרני התקנים צריכים לספק גם מסגרת וגם תמיכת HAL/קושחה:

  • מִסגֶרֶת:
    • קוד AOSP
    • אפשר Wi-Fi Direct: דורש דגל תכונה
  • תמיכה ב-Wi-Fi Direct (P2P) HAL (המרמזת על תמיכה בקושחה)

כדי ליישם תכונה זו, יצרני מכשירים מיישמים את ממשקי ה-Wi-Fi HIDL או AIDL ומפעילים את דגל התכונה עבור Wi-Fi Direct. ב- device.mk שנמצא ב- device/<oem>/<device> , שנה את משתנה הסביבה PRODUCT_COPY_FILES כך שיכלול תמיכה בתכונת Wi-Fi Direct:

```
PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml
```

כל שאר הדרישות לתמיכה ב-Wi-FI Direct כלולות ב-AOSP.

רנדומיזציה של MAC

אנדרואיד דורשת שכתובת מכשיר ה-Wi-Fi Direct וכתובת הממשק יהיו באקראי. הם חייבים להיות שונים מכתובת ה-MAC האמיתית של המכשיר וחייבים לעמוד בדרישות הבאות:

  • כתובת מכשיר ה-Wi-Fi Direct חייבת להיות אקראית בעת יצירת הממשק אם לא נשמרה קבוצה מתמשכת; אחרת כתובת ההתקן חייבת להמשיך להשתמש בכתובת ה-MAC האחרונה שנוצרה.
  • כתובת ממשק ה-Wi-Fi Direct, המכונה גם כתובת קבוצתית, חייבת להיות אקראית בכל פעם שנוצר חיבור.

אקראית Wi-Fi Direct MAC מיושמת ב-'wpa_supplicant' ונשלטת על ידי שתי תצורות, p2p_device_random_mac_addr ו- p2p_interface_random_mac_addr .

כדי להפעיל תכונה זו, יצרני המכשיר חייבים:

  • יישם את ספק ה-Wi-Fi ISupplicantP2pIface::setMacRandomization API. בהתאם לממשק המיושם, זה ב:
    • hardware/interface/wifi/supplicant/1.2 עבור HIDL
    • hardware/interface/wifi/supplicant/aidl עבור AIDL
  • הגדר את config_wifi_p2p_mac_randomization_supported ל'true' בשכבת-על מותאמת אישית של התקן.

מַתַן תוֹקֵף

אנדרואיד מספקת סט של בדיקות יחידה, בדיקות אינטגרציה (Android Connectivity Test Suite, או ACTS), בדיקות Compatibility Test Suite (CTS) ובדיקות CTS Verifier כדי לאמת את תכונת ה-Wi-Fi Direct. ניתן לבדוק את ה-Wi-Fi Direct באמצעות ה- Vendor Test Suite (VTS) .

בדיקות יחידה

אמת את חבילת ה-Wi-Fi Direct באמצעות הבדיקות הבאות.

מבחני שירות:

atest com.android.server.wifi.p2p

מבחני מנהל:

atest android.net.wifi.p2p

מבחני אינטגרציה (ACTS)

חבילת הבדיקות של ACTS Wi-FI Direct, הממוקמת ב- tools/test/connectivity/acts_tests/tests/google/wifi/p2p , מיישמת בדיקות פונקציונליות של Wi-Fi Direct.

בדיקות חבילת בדיקת תאימות (CTS).

השתמש בבדיקות CTS כדי לאמת את התכונה Wi-Fi Direct. CTS מזהה מתי התכונה מופעלת וכוללת אוטומטית את הבדיקות המשויכות.

כדי להפעיל את מבחני CTS, הרץ:

% atest android.net.wifi.p2p.cts

בדיקות CTS Verifier

בדיקות CTS Verifier מאמתות את התנהגות Wi-Fi Direct באמצעות שני מכשירים: מכשיר בדיקה ומכשיר ידוע כטוב . כדי להפעיל את הבדיקות, פתח את CTS Verifier ונווט אל הקטע שכותרתו Wi-Fi Direct Tests.