Contemporaneità Wi-Fi AP/AP

Android 12 introduce la contemporaneità Wi-Fi AP/AP, che consente ai dispositivi di creare due interfacce del punto di accesso (AP). Questa funzionalità consente ai dispositivi di supportare il tethering tramite un hotspot Wi-Fi (soft AP) dual band simultaneo (DBS). Per informazioni dettagliate sul supporto del tethering tramite un singolo hotspot Wi-Fi, consulta Supporto hotspot Wi-Fi (Soft AP).

Questa pagina descrive il comportamento del dispositivo quando questa funzionalità è attivata e i dettagli di implementazione per i produttori e i fornitori di dispositivi.

Come funziona

Quando è supportata la contemporaneità Wi-Fi AP/AP, il dispositivo può creare due interfacce AP, ad esempio un'interfaccia che funzioni sulla banda a 2, 4 GHz e un'altra sulla banda a 5 GHz. I client possono quindi connettersi a ciascuna delle interfacce dell'AP.

L'HAL Wi-Fi genera un'unica interfaccia in bridge con le due interfacce AP e la espone allo stack Wi-Fi e di connettività quando lo stack attiva un soft AP. Dopo l'attivazione dell'AP soft, l'HAL Wi-Fi indica che sono disponibili due interfacce e aggiorna le informazioni (ad esempio canale di funzionamento, larghezza di banda e BSSID) per ogni AP.

Per risparmiare energia, il framework disabilita un punto di accesso inutilizzato (2, 4 GHz, 5 GHz o 6 GHz) dopo un periodo di inattività. Il framework considera un AP inattivo quando non è connesso alcun client. I produttori di dispositivi possono personalizzare la durata di questo periodo di inattività. Per ulteriori informazioni, consulta Personalizzare il periodo di inattività.

I dispositivi supportano la contemporaneità Wi-Fi AP/AP utilizzando una delle seguenti configurazioni soft AP in bridge:

  • Configurazione di due bande (il canale viene selezionato automaticamente dal framework o dal driver)
  • Configurazione di due canali su un AP dual band

Requisiti

Per implementare la concorrenza AP/AP Wi-Fi, i dispositivi devono soddisfare i seguenti requisiti:

  • Il chip o il firmware Wi-Fi deve supportare due connessioni AP contemporaneamente. Il firmware deve supportare tutte le combinazioni di canali e bande per entrambe le connessioni. Per evitare problemi di prestazioni, ti consigliamo di utilizzare un chip Wi-Fi compatibile con DBS 2x2+2x2.

  • Il dispositivo deve supportare i seguenti metodi nell'HAL del fornitore Wi-Fi:

    • IWifiChip.createBridgedApIface()
    • IWifiChip.removeIfaceInstanceFromBridgedApIface()
    • IWifiApIface.resetToFactoryMacAddress()
    • IWifiApIface.getBridgedInstances()

Implementazione

Per implementare la concorrenza AP/AP Wi-Fi:

  1. Attiva almeno una delle seguenti funzioni (disattivate per impostazione predefinita) utilizzando gli overlay delle risorse di runtime:

    • config_wifiBridgedSoftApSupported: supporta più AP raggruppati.
    • config_wifiStaWithBridgedSoftApConcurrencySupported: supporta la concorrenza di una stazione (STA) e di più AP in bridge.
  2. Per i dispositivi che utilizzano AIDL Wi-Fi HAL o HIDL Wi-Fi HAL 1.6, definisci AP_BRIDGED nella combinazione di interfaccia Wi-Fi HAL. Per maggiori dettagli, consulta Contemporaneità multi-interfaccia Wi-Fi.

  3. Configura la configurazione del soft AP in bridge chiamando uno dei seguenti metodi:

  4. Registra un callback per ottenere le funzionalità del dispositivo utilizzando WifiManager#registerSoftApCallback. Il callback SoftApCallback fornisce i seguenti metodi per una configurazione del soft AP collegato:

Personalizzare il periodo di inattività

Per personalizzare la durata del periodo di inattività, configura il seguente overlay, disponibile in packages/modules/Wifi/service/ServiceWifiResources/res/values/config.xml:

  • config_wifiFrameworkSoftApShutDownIdleInstanceInBridgedModeTimeoutMillisecond: l'intervallo predefinito per il timeout di arresto. Valido solo se SoftApConfiguration#setBridgedModeOpportunisticShutdownEnabled è abilitato.

  • (Disponibile dalla versione 13) config_wifiFrameworkSoftApDisableBridgedModeShutdownIdleInstanceWhenCharging: indica se disattivare il timer di spegnimento per inattività durante la ricarica.