Android 10 introduce il supporto per Wi-Fi Easy Protocollo Connect, noto anche come protocollo di provisioning dei dispositivi (DPP). Connessione facile Wi-Fi è stata presentata da Wi-Fi Alliance (WFA) come alternativa al Configurazione protetta Wi-Fi (WPS). La funzionalità WPS è stata ritirata in Android 9.
La funzionalità Wi-Fi Easy Connect offre un metodo semplice e sicuro per:
- Configurare dispositivi Wi-Fi (inclusi i dispositivi headless) in una rete senza inserire una password.
- Connettiti alle reti Wi-Fi senza conoscere o inserire una password.
Il bootstrap e l'autenticazione sono configurati utilizzando un URI, che viene acquisito scansionando un codice QR (utilizzando una fotocamera) o se è configurato fuori banda, ad esempio mediante BLE o NFC.
Wi-Fi Easy Connect utilizza un canale criptato per inviare le credenziali Wi-Fi tra e, poiché vengono utilizzati i frame delle azioni pubbliche, i dispositivi possono usare e punti di accesso.
Android 10 supporta Connessione rapida Wi-Fi solo in iniziatore (la modalità di risposta è non supportati). Sono supportate le seguenti modalità operative:
- Configuratore iniziatore: invia le credenziali di rete a un nuovo dispositivo. scansionando il codice QR.
- Iniziatore-registrato:entra in una rete scansionando il codice QR di rete.
Android 10 supporta il protocollo a chiave precondivisa (PSK) per WPA2 e il protocollo SAE (autenticazione simultanea dell'equivalenza) per WPA3.
La connessione Wi-Fi Easy Connect è supportata solo in modalità client (la modalità SoftAP non supportato).
Implementazione
Per supportare Connessione facile Wi-Fi, implementa l'interfaccia del supplicant forniti nell'Android Open Source Project (AOSP). A seconda dell'interfaccia implementata, si trova all'indirizzo:
hardware/interfaces/wifi/supplicant/1.2/
o una versione successiva per HIDLhardware/interfaces/wifi/supplicant/aidl/
per AIDL
Per supportare la DPP, è necessario quanto segue:
Patch del kernel Linux per supportare DPP:
- cfg80211
- nl80211
wpa_supplicant
con supporto per DPPDriver Wi-Fi con supporto per DPP
Firmware Wi-Fi con supporto per DPP
Le API pubbliche sono disponibili in Android 10 per l'utilizzo da parte di app:
WifiManager#isEasyConnectSupported
: Consente di interrogare il framework per determinare se il dispositivo supporta Wi-Fi Easy Connettiti.Activity#startActivityForResult(ACTION_PROCESS_WIFI_EASY_CONNECT_URI)
: Consente alle app di integrare Wi-Fi Easy Connect nel loro flusso di onboarding/configurazione.
Attiva Connessione facile Wi-Fi
Per attivare Connessione facile Wi-Fi nel framework Android, includi:
Compilazione CONFIG_DPP
nel file di configurazione di wpa_supplicant
,
android.config
:
# Easy Connect (Device Provisioning Protocol - DPP) CONFIG_DPP=y
Convalida
Per testare l'implementazione, esegui questi test.
Test delle unità
Corsa
DppManagerTest
per verificare il comportamento dei flag di capacità per DPP.
atest DppManagerTest
Test VTS
Se l'interfaccia HIDL è implementata, esegui
VtsHalWifiSupplicantV1_2TargetTest
per testare il comportamento dell'HAL supplicante v1.2.
Se l'interfaccia AIDL è implementata, esegui
VtsHalWifiSupplicantStaIfaceTargetTest
per testare il comportamento del supplicante HAL.