A estrutura Android Wi-Fi ajuda os usuários a se conectarem a uma boa rede Wi-Fi quando as redes estiverem disponíveis e forem necessárias. O Android faz isso de várias maneiras:
- Notificação de rede aberta : Informando os usuários sobre boas redes Wi-Fi abertas disponíveis
- Ativar o Wi-Fi automaticamente : Reativando o Wi-Fi quando o usuário estiver perto de uma rede salva anteriormente
- Conecte-se a redes abertas : Conectando automaticamente o usuário a boas redes Wi-Fi abertas
- Badging : Exibindo informações sobre a qualidade das redes disponíveis
Os recursos descritos são implementados pelo código AOSP e você não precisa habilitá-los ou configurá-los explicitamente.
Notificação de rede aberta
O recurso de notificação de rede aberta gera uma notificação ao usuário sempre que:
- O Wi-Fi está ativado
- O dispositivo não está conectado a uma rede Wi-Fi
- Uma rede Wi-Fi aberta e com um RSSI suficientemente alto (o mesmo limite de RSSI usado pelo algoritmo de seleção de Wi-Fi interno) está disponível
O recurso pode ser ativado ou desativado pelo usuário usando o aplicativo Configurações em:
Configurações > Rede e internet > Wi-Fi > Preferências de Wi-Fi > Notificação de rede aberta
![Recurso de notificação de rede aberta](https://source.android.com/static/devices/tech/connect/images/open-network-notification.png?hl=pt-br)
Ativar o Wi-Fi automaticamente
Os usuários podem desativar o Wi-Fi por vários motivos (por exemplo, uma conexão a uma rede ruim) e podem esquecer de reativá-lo ao chegar em casa, resultando em uma experiência ruim (por exemplo, não poder controlar dispositivos de automação residencial) . O recurso Ativar Wi-Fi automaticamente , introduzido no Android 9, resolve esse problema reativando automaticamente o Wi-Fi sempre que o dispositivo estiver próximo a uma rede Wi-Fi que seja uma rede salva (ou seja, uma rede à qual o usuário se conectou explicitamente no passado) e tem um RSSI suficientemente alto.
O recurso pode ser ativado ou desativado pelo usuário usando o aplicativo Configurações em:
Configurações > Rede e internet > Wi-Fi > Preferências de Wi-Fi > Ativar o Wi-Fi automaticamente
![Ativar o Wi-Fi automaticamente](https://source.android.com/static/devices/tech/connect/images/auto-wifi.png?hl=pt-br)
A Varredura Wi-Fi (para Localização) deve estar habilitada para que este recurso funcione. Se a Varredura Wi-Fi não estiver habilitada, o usuário será solicitado a dar permissão para habilitá-la. A verificação de Wi-Fi é necessária porque os resultados da verificação são usados para determinar se o dispositivo está próximo a uma rede Wi-Fi que atende aos critérios para reativar a conectividade Wi-Fi.
O recurso evita reativar o Wi-Fi imediatamente após um usuário desativá-lo, mesmo que o dispositivo observe uma rede Wi-Fi salva com qualidade suficiente. Por exemplo, se o usuário estiver no escritório e estiver conectado ao Wi-Fi do escritório (uma rede salva ) e depois desabilitar o Wi-Fi, o recurso não reativará o Wi-Fi até que o usuário chegue a um ambiente diferente com uma rede salva diferente que atenda aos critérios de reativação.
Conexão automática a redes abertas
O recurso Conectar a redes abertas , disponível no Android 8.0 e superior, conecta automaticamente o dispositivo a redes de alta qualidade disponíveis. Os critérios são:
- O Wi-Fi está ativado
- O dispositivo não está conectado a uma rede Wi-Fi
- Uma rede Wi-Fi aberta e boa , conforme relatado pelo provedor de classificação de rede externo (consulte a próxima seção), está disponível.
O recurso pode ser ativado ou desativado pelo usuário usando o aplicativo Configurações em:
Configurações > Rede e internet > Wi-Fi > Preferências de Wi-Fi > Conectar a redes abertas
![Conecte-se a redes abertas](https://source.android.com/static/devices/tech/connect/images/connect-open-networks.png?hl=pt-br)
O recurso Conectar a redes abertas é desabilitado se um provedor de classificação de rede externo não estiver selecionado. O usuário pode selecionar qualquer um dos provedores de classificação de rede disponíveis usando o menu Provedor de classificação de rede.
Provedor de classificação de rede externa
Para ajudar a determinar o que constitui uma boa rede Wi-Fi, o Android oferece suporte a provedores de classificação de rede externos (também conhecidos como Pontuadores de rede ) que fornecem informações sobre a qualidade de redes Wi-Fi abertas. Por exemplo, um pontuador de rede pode usar dados históricos de desempenho (por exemplo, este AP funcionou muito bem no passado, é uma boa ideia experimentá-lo agora) para determinar se uma determinada rede Wi-Fi é boa.
A lista de provedores de classificação de rede disponíveis está disponível para o usuário no menu Configurações > Rede e Internet > Wi-Fi > Preferências de Wi-Fi > Avançado > Provedor de classificação de rede . O usuário pode selecionar um ou nenhum deles. Se nenhum estiver disponível ou selecionado, o recurso Conectar a redes abertas será desabilitado.
Você não precisa fornecer um provedor de classificação de rede externo. Para criar um provedor:
- Implemente a classe documentada em
NetworkScoreManager
. - O provedor de classificação de rede externo deve ser um aplicativo privilegiado.
- Configure seu sistema para usar sua implementação personalizada atualizando a chave
config_defaultNetworkRecommendationProviderPackage
no arquivo de configuração de sobreposição de seu produto deframeworks/base/core/res/res/values/config.xml
.
Se você não quiser incluir a funcionalidade de provedor de classificação de rede padrão, poderá optar por não definir uma propriedade de provedor padrão e ocultar a tela Provedor de classificação de rede no AOSP.
Badge de rede Wi-Fi
As informações fornecidas pelo provedor de classificação de rede também são usadas pelo Wi-Fi Picker para adicionar informações sobre a qualidade das redes Wi-Fi disponíveis, o que pode ajudar o usuário a selecionar as redes Wi-Fi manualmente. As redes para as quais as informações estão disponíveis (fornecidas pelo provedor de classificação de rede externo) exibirão informações de velocidade abaixo do nome da rede.
![Qualidade da rede Wi-Fi](https://source.android.com/static/devices/tech/connect/images/wifi-network-quality.png?hl=pt-br)
Como esse recurso requer um provedor de classificação de rede externo, ele não está disponível e nenhuma informação de velocidade/qualidade é exibida, se tal provedor não estiver disponível ou selecionado.