Android 9 introduce la possibilità per i dispositivi di funzionare contemporaneamente in modalità STA e AP. Per i dispositivi che supportano Dual Band Simultaneous (DBS), questa funzione apre nuove funzionalità come non interrompere il Wi-Fi STA quando un utente desidera abilitare l'hotspot (softAP).
Esempi e fonte
La concorrenza Wi-Fi STA/AP è supportata nel codice del framework Android AOSP predefinito. È inoltre supportato dall'implementazione HAL di riferimento descritta in HAL Wi-Fi . Il flag in fase di compilazione WIFI_HIDL_FEATURE_DUAL_INTERFACE
descritto nella sezione Implementazione di seguito abilita una specifica di concorrenza dell'interfaccia che indica il supporto simultaneo per STA e AP.
Implementazione
Per implementare la concorrenza Wi-Fi STA/AP sul tuo dispositivo:
Attiva un flag in fase di compilazione per abilitare il supporto per due interfacce nell'HAL. Il flag si trova in
device/<oem>/<device>/BoardConfig-common.mk
.- WIFI_HIDL_FEATURE_DUAL_INTERFACE := vero
Esporre due interfacce di rete:
- WLAN0 e WLAN1
Il flag WIFI_HIDL_FEATURE_DUAL_INTERFACE
viene ignorato se è specificato il flag WIFI_HAL_INTERFACE_COMBINATIONS
. Per ulteriori informazioni, consulta Concorrenza multi-interfaccia Wi-Fi .
Validazione
Per verificare che la funzionalità funzioni come previsto, esegui sia un test di integrazione (ACTS) che un test manuale.
Il file ACTS, WifiStaApConcurrencyTest.py
, situato in tools/test/connectivity/acts_tests/tests/google/wifi
, contiene una serie di test che visualizzano diverse combinazioni di STA e AP.
Per convalidare manualmente questa funzionalità, attivare e disattivare le interfacce STA e AP indipendentemente dall'interfaccia utente.
Se sia AP che STA si trovano sulla stessa sottorete, potrebbero verificarsi problemi di routing sul dispositivo sottoposto a test (DUT). Per evitare collisioni, prova a spostare l'AP su una sottorete diversa.
Alcuni fornitori di chip Wi-Fi mettono la radio in modalità time-sharing se STA e AP sono sulla stessa banda ma su canali diversi. Ciò porta ad un forte calo delle prestazioni. Per risolvere questo problema, il chip può utilizzare Channel Switch Evitamento (CSA) per:
- Spostare l'AP sullo stesso canale della STA
- Spostare l'AP su una banda diversa dalla STA