Android 10 memperkenalkan dukungan untuk Wi-Fi Easy Menghubungkan protokol, yang juga dikenal sebagai protokol penyediaan perangkat (DPP). Wi-Fi Easy Connect diperkenalkan oleh Wi-Fi {i>Alliance<i} (WFA) sebagai alternatif untuk WPS (Wi-Fi Protected Setup). WPS tidak digunakan lagi di Android 9.
Wi-Fi Easy Connect menyediakan metode yang sederhana dan aman untuk:
- Mengaktivasi perangkat Wi-Fi (termasuk perangkat headless) ke jaringan tanpa memasukkan {i>password<i}.
- Bergabung ke jaringan Wi-Fi tanpa mengetahui atau memasukkan sandi.
Bootstrap dan autentikasi dikonfigurasi menggunakan URI, yang diperoleh dengan memindai kode QR (menggunakan kamera), atau dikonfigurasi out-of-band, misalnya, menggunakan BLE atau NFC.
Wi-Fi Easy Connect menggunakan saluran terenkripsi untuk mengirim kredensial Wi-Fi di antara karena {i>public action frame<i} digunakan, perangkat dapat menggunakan titik akses yang luas.
Android 10 hanya mendukung Wi-Fi Easy Connect di mode inisiator (mode responden adalah tidak didukung). Mode operasi ini didukung:
- Initiator-Configurator: Mengirim kredensial jaringan ke perangkat baru dengan memindai kode QR-nya.
- Inisiator-Enrollee: Bergabunglah dengan jaringan dengan memindai kode QR jaringan.
Android 10 mendukung protokol pre-shared key (PSK) untuk WPA2 dan protokol otentikasi simultan dari sama dengan (SAE) untuk WPA3.
Wi-Fi Easy Connect hanya didukung dalam mode klien (mode SoftAP tidak didukung).
Implementasi
Untuk mendukung Wi-Fi Easy Connect, terapkan antarmuka pemohon yang disediakan dalam Proyek Open Source Android (AOSP). Bergantung pada antarmuka yang diimplementasikan, hal ini dapat terjadi pada:
hardware/interfaces/wifi/supplicant/1.2/
atau versi yang lebih baru untuk HIDLhardware/interfaces/wifi/supplicant/aidl/
untuk AIDL
Hal berikut diperlukan untuk mendukung DPP:
Patch kernel Linux untuk mendukung DPP:
- cfg80211
- nl80211
wpa_supplicant
dengan dukungan untuk DPPDriver Wi-Fi dengan dukungan untuk DPP
Firmware Wi-Fi dengan dukungan untuk DPP
API Publik tersedia di Android 10 untuk digunakan oleh aplikasi:
WifiManager#isEasyConnectSupported
: Membuat kueri framework untuk menentukan apakah perangkat mendukung Wi-Fi Easy Hubungkan.Activity#startActivityForResult(ACTION_PROCESS_WIFI_EASY_CONNECT_URI)
: Mengizinkan aplikasi mengintegrasikan Wi-Fi Easy Connect ke dalam alur orientasi/penyiapannya.
Aktifkan Wi-Fi Easy Connect
Untuk mengaktifkan Wi-Fi Easy Connect dalam kerangka kerja Android, sertakan
Kompilasi CONFIG_DPP
di file konfigurasi wpa_supplicant
,
android.config
:
# Easy Connect (Device Provisioning Protocol - DPP) CONFIG_DPP=y
Validasi
Untuk menguji implementasi Anda, jalankan pengujian berikut.
Pengujian unit
Lari
DppManagerTest
untuk memverifikasi perilaku
tanda kemampuan untuk DPP.
atest DppManagerTest
Pengujian VTS
Jika antarmuka HIDL diimplementasikan, jalankan
VtsHalWifiSupplicantV1_2TargetTest
untuk menguji perilaku pemohon HAL v1.2.
Jika antarmuka AIDL diimplementasikan, jalankan
VtsHalWifiSupplicantStaIfaceTargetTest
untuk menguji perilaku HAL pemohon.