Wi-Fi 輕鬆連線

Android 10 引入了對 Wi-Fi Easy Connect 協定(也稱為裝置配置協定 (DPP))的支援。 Wi-Fi Easy Connect由 Wi-Fi 聯盟 (WFA) 推出,作為 Wi-Fi 保護設定 (WPS) 的替代方案。 WPS 在 Android 9 中已棄用。

Wi-Fi Easy Connect 提供了一種簡單且安全的方法來:

  • 將 Wi-Fi 裝置(包括無頭裝置)連接到網絡,無需輸入密碼。
  • 無需知道或輸入密碼即可加入 Wi-Fi 網路。

引導和身份驗證使用 URI 進行配置,該 URI 透過掃描 QR 碼(使用相機)獲取,或使用帶外配置,例如使用 BLE 或 NFC。

Wi-Fi Easy Connect 使用加密通道在裝置之間傳送 Wi-Fi 憑證,並且由於使用公共操作框架,因此裝置可以使用現有存取點。

Android 10 僅在發起者模式下支援 Wi-Fi Easy Connect(不支援響應者模式)。支援以下操作模式:

  • 啟動器配置器:透過掃描 QR 碼將網路憑證傳送到新裝置。
  • 發起者-參與者:透過掃描網路二維碼加入網路。

Android 10 支援 WPA2 的預先共用金鑰 (PSK) 協定和 WPA3 的同時驗證 (SAE) 協定。

Wi-Fi Easy Connect 僅在用戶端模式下支援(不支援 SoftAP 模式)。

執行

若要支援 Wi-Fi Easy Connect,請實作 Android 開源專案 (AOSP) 中提供的請求者介面。根據所實現的接口,它位於:

支援 DPP 需要滿足以下條件:

  • 支援 DPP 的 Linux 核心補丁:

    • cfg80211
    • NL80211
  • 支援 DPP 的wpa_supplicant

  • 支援 DPP 的 Wi-Fi 驅動程式

  • 支援 DPP 的 Wi-Fi 韌體

Android 10 中提供了公共 API 供應用程式使用:

啟用 Wi-Fi 輕鬆連接

若要在 Android 框架中啟用 Wi-Fi Easy Connect,請在wpa_supplicant設定檔android.config中包含CONFIG_DPP編譯選項:

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

驗證

若要測試您的實現,請執行以下測試。

單元測試

執行DppManagerTest以驗證 DPP 功能標誌的行為。

atest DppManagerTest

整合測試(ACTS)

若要執行整合測試,請使用 Android Comms Test Suite (ACTS) 檔案WifiDppTest.py ,該檔案位於tools/test/connectivity/acts_tests/tests/google/wifi

VTS 測試

如果實作了 HIDL 接口,請執行VtsHalWifiSupplicantV1_2TargetTest來測試請求者 HAL v1.2 的行為。

如果實作了 AIDL 接口,請執行VtsHalWifiSupplicantStaIfaceTargetTest來測試請求者 HAL 的行為。