वाई-फ़ाई आसान कनेक्ट

Android 10 में, वाई-फ़ाई आसानी से कनेक्ट करने वाले प्रोटोकॉल के लिए सहायता उपलब्ध है. इसे डिवाइस प्रोवाइज़निंग प्रोटोकॉल (डीपीपी) भी कहा जाता है. Wi-Fi Easy Connect को Wi-Fi Alliance (WFA) ने, वाई-फ़ाई सुरक्षित सेटअप (डब्ल्यूपीएस) के विकल्प के तौर पर लॉन्च किया था. Android 9 में WPS की सुविधा बंद हो गई थी.

वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा, इन कामों को आसान और सुरक्षित तरीके से करने में मदद करती है:

  • पासवर्ड डाले बिना, वाई-फ़ाई डिवाइसों (इनमें हेडलेस डिवाइस भी शामिल हैं) को नेटवर्क से कनेक्ट करना.
  • पासवर्ड डाले या जाने बिना वाई-फ़ाई नेटवर्क से कनेक्ट करना.

बूटस्ट्रैपिंग और पुष्टि करने के लिए यूआरआई का इस्तेमाल किया जाता है. यह यूआरआई क्यूआर कोड (कैमरे की मदद से) स्कैन करके हासिल किया जाता है या BLE या एनएफ़सी का इस्तेमाल करके, आउट-ऑफ़-बैंड कॉन्फ़िगर किया जाता है.

Wi-Fi Easy Connect, डिवाइसों के बीच वाई-फ़ाई क्रेडेंशियल भेजने के लिए एन्क्रिप्ट किए गए चैनल का इस्तेमाल करता है. साथ ही, सार्वजनिक ऐक्शन फ़्रेम का इस्तेमाल करने की वजह से, डिवाइस मौजूदा ऐक्सेस पॉइंट का इस्तेमाल कर सकते हैं.

Android 10 पर, वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा सिर्फ़ शुरू करने वाले डिवाइस के मोड में काम करती है. जवाब देने वाले डिवाइस के मोड में यह सुविधा काम नहीं करती. इन तरीकों से काम किया जा सकता है:

  • इनिशियेटर-कॉन्फ़िगरर: नए डिवाइस के क्यूआर कोड को स्कैन करके, नेटवर्क क्रेडेंशियल भेजें.
  • रजिस्ट्रेशन शुरू करने वाला व्यक्ति: नेटवर्क का क्यूआर कोड स्कैन करके, नेटवर्क में शामिल हों.

Android 10, WPA2 के लिए पहले से शेयर की गई कुंजी (PSK) प्रोटोकॉल और WPA3 के लिए बराबर (SAE) प्रोटोकॉल की एक साथ पुष्टि करने की सुविधा के साथ काम करता है.

वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा सिर्फ़ क्लाइंट मोड में काम करती है. यह सुविधा, सॉफ़्ट एपी मोड में काम नहीं करती.

लागू करना

Wi-Fi Easy Connect के साथ काम करने के लिए, Android ओपन सोर्स प्रोजेक्ट (AOSP) में दिया गया मददगार इंटरफ़ेस लागू करें. लागू किए गए इंटरफ़ेस के आधार पर, यह यहां मौजूद होता है:

डीपीपी के साथ काम करने के लिए, ये ज़रूरी हैं:

  • डीपीपी के साथ काम करने के लिए, Linux कर्नेल के पैच:

    • cfg80211
    • nl80211
  • wpa_supplicant डीपीपी के लिए सहायता के साथ

  • डीपीपी के साथ काम करने वाला वाई-फ़ाई ड्राइवर

  • DPP के साथ काम करने वाला वाई-फ़ाई फ़र्मवेयर

Android 10 में सार्वजनिक एपीआई उपलब्ध हैं, ताकि ऐप्लिकेशन इनका इस्तेमाल कर सकें:

  • WifiManager#isEasyConnectSupported: फ़्रेमवर्क से क्वेरी करके यह पता लगाता है कि डिवाइस में वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा काम करती है या नहीं.
  • Activity#startActivityForResult(ACTION_PROCESS_WIFI_EASY_CONNECT_URI): ऐप्लिकेशन को, अपने ऑनबोर्डिंग/सेटअप फ़्लो में वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा को इंटिग्रेट करने की अनुमति देता है.

वाई-फ़ाई Easy Connect को चालू करें

Android फ़्रेमवर्क में वाई-फ़ाई आसानी से कनेक्ट करने की सुविधा चालू करने के लिए, wpa_supplicant कॉन्फ़िगरेशन फ़ाइल में CONFIG_DPP कंपाइलेशन विकल्प शामिल करें, android.config:

# Easy Connect (Device Provisioning Protocol - DPP)
CONFIG_DPP=y

पुष्टि करें

आपने जो लागू किया है उसकी जांच करने के लिए, नीचे दिए गए टेस्ट करें.

यूनिट टेस्ट

DPP के लिए क्षमता के फ़्लैग के व्यवहार की पुष्टि करने के लिए DppManagerTest चलाएं.

atest DppManagerTest

वीटीएस टेस्ट

अगर HIDL इंटरफ़ेस लागू किया गया है, तो supplicant HAL v1.2 के व्यवहार की जांच करने के लिए, VtsHalWifiSupplicantV1_2TargetTest को चलाएं.

अगर AIDL इंटरफ़ेस लागू किया गया है, तो supplicant HAL के व्यवहार की जांच करने के लिए, VtsHalWifiSupplicantStaIfaceTargetTest को चलाएं.