Wi-Fi Direto

O recurso Wi-Fi Direct , também conhecido como Wi-Fi P2P, permite que dispositivos de suporte descubram e se conectem diretamente usando o protocolo Wi-Fi Direct sem acesso à Internet ou rede celular. Esse recurso, desenvolvido com base na especificação Wi-Fi Direct da Wi-Fi Alliance (WFA), permite o compartilhamento de dados de alto rendimento entre dispositivos e aplicativos confiáveis ​​que, de outra forma, estão fora da rede.

Exemplos e fonte

Para usar esse recurso, os fabricantes de dispositivos devem implementar a linguagem de design de interface de hardware Wi-Fi (HIDL) fornecida no Android Open Source Project (AOSP). HIDL substitui a estrutura anterior de HAL (Hardware Abstraction Layer) usada para simplificar implementações especificando tipos e chamadas de método coletadas em interfaces e pacotes.

As seguintes superfícies Wi-Fi HAL são necessárias para empregar o recurso Wi-Fi Direct: + hardware/interfaces/wifi/1.3 ou superior + hardware/interfaces/wifi/supplicant/1.2 ou superior

Implementação

Os fabricantes de dispositivos precisam fornecer suporte de estrutura e HAL/firmware:

  • Estrutura:
    • Código AOSP
    • Ativar Wi-Fi Direct: requer um sinalizador de recurso
  • Suporte a Wi-Fi Direct (P2P) HAL (o que implica suporte a firmware)

Para implementar esse recurso, os fabricantes de dispositivos implementam o Wi-Fi HIDL e habilitam o sinalizador de recurso para Wi-Fi Direct. Em device.mk localizado em device/<oem>/<device> , modifique a variável de ambiente PRODUCT_COPY_FILES para incluir suporte para o recurso Wi-Fi Direct:

```
PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml
```

Todos os outros requisitos para suporte ao Wi-FI Direct estão incluídos no AOSP.

Randomização MAC

O Android exige que o endereço do dispositivo Wi-Fi Direct e o endereço da interface sejam aleatórios. Eles devem ser diferentes do endereço MAC verdadeiro do dispositivo e devem atender aos seguintes requisitos:

  • O endereço do dispositivo Wi-Fi Direct deve ser aleatório na criação da interface se não houver nenhum grupo persistente salvo; caso contrário, o endereço do dispositivo deve continuar usando o último endereço MAC gerado.
  • O endereço da interface Wi-Fi Direct, também conhecido como endereço de grupo, deve ser aleatório sempre que uma conexão for estabelecida.

A randomização do Wi-Fi Direct MAC é implementada no 'wpa_supplicant' e controlada por duas configurações, p2p_device_random_mac_addr e p2p_interface_random_mac_addr .

Para habilitar esse recurso, os fabricantes de dispositivos devem: + Implementar a API HIDL do Suplicante Wi-Fi ISupplicantP2pIface::setMacRandomization em hardware/interface/wifi/supplicant/1.2 .

  • Defina config_wifi_p2p_mac_randomization_supported como 'true' em uma sobreposição personalizada de dispositivo.

Validação

O Android fornece um conjunto de testes de unidade, testes de integração (Android Connectivity Test Suite ou ACTS), testes do Compatibility Test Suite (CTS) e testes do CTS Verifier para validar o recurso Wi-Fi Direct. O Wi-Fi Direct também pode ser testado usando o Vendor Test Suite (VTS) .

Testes de unidade

Verifique o pacote Wi-Fi Direct usando os seguintes testes.

Testes de serviço:

atest com.android.server.wifi.p2p

Testes do gerente:

atest android.net.wifi.p2p

Testes de integração (ACTS)

A suíte de testes ACTS Wi-FI Direct, localizada em tools/test/connectivity/acts_tests/tests/google/wifi/p2p , implementa testes funcionais de Wi-Fi Direct.

Testes do Compatibility Test Suite (CTS)

Use os testes CTS para validar o recurso Wi-Fi Direct. O CTS detecta quando o recurso está habilitado e inclui automaticamente os testes associados.

Para acionar os testes CTS, execute:

% atest android.net.wifi.p2p.cts

Testes do Verificador CTS

Os testes do CTS Verifier validam o comportamento do Wi-Fi Direct usando dois dispositivos: um dispositivo de teste e um dispositivo em boas condições . Para executar os testes, abra o CTS Verifier e navegue até a seção intitulada Testes do Wi-Fi Direct.