Wi-Fi Direct

कॉन्टेंट बनाने Wi-Fi Direct इस सुविधा को वाई-फ़ाई P2P के नाम से भी जाना जाता है. इसकी मदद से, सपोर्ट करने वाले डिवाइसों को खोजने और कनेक्ट करने में मदद मिलती है एक-दूसरे से सीधे कनेक्ट इंटरनेट या मोबाइल नेटवर्क के ऐक्सेस के बिना ही Wi-Fi Direct प्रोटोकॉल का इस्तेमाल किया जा सकता है. यह सुविधा, जिसे Wi-Fi Alliance पर बनाया गया है (डब्ल्यूएफ़ए) Wi-Fi Direct के बारे में खास बातें के बीच हाई-थ्रूपुट डेटा शेयर करने की अनुमति देता है जो नेटवर्क से बाहर होते हैं.

उदाहरण और सोर्स

इस सुविधा का इस्तेमाल करने के लिए, डिवाइस बनाने वाली कंपनियों को वाई-फ़ाई चालू करना होगा वेंडर और सहायक एचएएल इंटरफ़ेस.

Android 13 में, सप्लिकंट इंटरफ़ेस, एचएएल डेफ़िनिशन के लिए एआईडीएल का इस्तेमाल करता है. तय सीमा में Android 14 और उसके बाद के वर्शन के लिए, वेंडर एचएएल इंटरफ़ेस का इस्तेमाल किया जाता है एआईडीएल. Android 12 और उससे पहले वाले वर्शन के लिए, सप्लिकेंट और वेंडर HAL इंटरफ़ेस, HIDL का इस्तेमाल करके तय किए जाते हैं.

Wi-Fi Direct का इस्तेमाल करने के लिए, नीचे दिए गए वाई-फ़ाई एचएएल प्लैटफ़ॉर्म की ज़रूरत है सुविधा:

  • hardware/interfaces/wifi/aidl या hardware/interfaces/wifi/1.3 या उससे ज़्यादा
  • hardware/interfaces/wifi/supplicant/aidl या hardware/interfaces/wifi/supplicant/1.2 या उससे ज़्यादा

लागू करना

डिवाइस बनाने वाली कंपनियों को फ़्रेमवर्क और एचएएल/फ़र्मवेयर, दोनों से जुड़ी सहायता देनी होगी:

  • फ़्रेमवर्क:
    • एओएसपी कोड
    • Wi-Fi Direct चालू करें: फ़ीचर फ़्लैग की ज़रूरत है
  • Wi-Fi Direct (P2P) HAL की सुविधा (इसमें फ़र्मवेयर की सुविधा शामिल है)

इस सुविधा को लागू करने के लिए, डिवाइस बनाने वाली कंपनियां वाई-फ़ाई 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 के साथ काम करने के लिए, एओएसपी में अन्य सभी ज़रूरी शर्तें शामिल हैं.

एमएसी रैंडमाइज़ेशन

Android के लिए ज़रूरी है कि 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.

इस सुविधा को चालू करने के लिए, डिवाइस बनाने वाली कंपनियों के लिए ज़रूरी है कि:

  • वाई-फ़ाई सप्लिकेंट ISupplicantP2pIface::setMacRandomization एपीआई लागू करें. लागू किए गए इंटरफ़ेस के आधार पर, यह इसमें है:
    • HIDL के लिए hardware/interface/wifi/supplicant/1.2
    • एआईडीएल के लिए hardware/interface/wifi/supplicant/aidl
  • शुरू config_wifi_p2p_mac_randomization_supported से 'सही' डिवाइस कस्टम में ओवरले करें.

पुष्टि करें

Android, यूनिट टेस्ट का सेट उपलब्ध कराता है. कंपैटबिलिटी टेस्ट सुइट (सीटीएस) टेस्ट, और CTS की पुष्टि करने वाला टूल, वाई-फ़ाई की पुष्टि करने के लिए जांच करता है सीधे तौर पर काम करने वाली सुविधा. Wi-Fi Direct की जांच विक्रेता टेस्ट सुइट (वीटीएस).

यूनिट टेस्ट

नीचे दिए गए टेस्ट का इस्तेमाल करके Wi-Fi Direct पैकेज की पुष्टि करें.

सर्विस टेस्ट:

atest com.android.server.wifi.p2p

मैनेजर टेस्ट:

atest android.net.wifi.p2p

कंपैटबिलिटी टेस्ट सुइट (सीटीएस) के टेस्ट

Wi-Fi Direct सुविधा की पुष्टि करने के लिए, सीटीएस जांच का इस्तेमाल करें. सीटीएस यह पता लगाता है कि चालू है और इससे जुड़े टेस्ट अपने-आप शामिल हो जाते हैं.

सीटीएस टेस्ट को ट्रिगर करने के लिए, इसे चलाएं:

% atest android.net.wifi.p2p.cts

सीटीएस वेरिफ़ायर टेस्ट

CTS Verifier, दो डिवाइसों का इस्तेमाल करके Wi-Fi Direct के काम करने के तरीके की पुष्टि करता है: एक टेस्ट डिवाइस और किसी जाने-पहचाने गुड डिवाइस को चुनें. जांच करने के लिए, CTS Verifier खोलें और Wi-Fi Direct Tests टाइटल वाले सेक्शन पर जाएं.