O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Networking

O Android 10 inclui os seguintes módulos de rede:

  • O módulo Networking Components fornece serviços de IP comuns, monitoramento de conectividade de rede e detecção de portal de login cativo.
  • O módulo Network Stack Permission Config define uma permissão que permite que os módulos executem tarefas relacionadas à rede.

Módulo de componentes de rede

O módulo Networking Components garante que o Android possa se adaptar aos padrões de rede em evolução e permite a interoperabilidade com novas implementações. Por exemplo, atualizações para detecção de portal cativo e código de login permitem que o Android fique atualizado com a mudança de modelos de portal cativo, e atualizações para Advanced Policy Firewall (APF) permitem que Android economize energia em Wi-Fi conforme novos tipos de pacotes se tornam comuns.

Mudanças no Android 10

O módulo Componentes de rede contém os seguintes componentes.

  • Serviços de IP. O componente IpClient (anteriormente IpManager) lida com o provisionamento e a manutenção da camada IP. No Android 9, era usado em processo cruzado por componentes como Bluetooth e em processo por componentes como Wi-Fi. O componente DhcpClient obtém endereços IP de servidores DHCP para que possam ser atribuídos a interfaces.
  • NetworkMonitor. O componente NetworkMonitor testa a acessibilidade da Internet ao se conectar a uma nova rede ou em caso de falhas de rede, ao detectar portais cativos e ao validar redes.
  • Aplicativo de login do portal cativo. O aplicativo de login do portal Captive é um aplicativo pré-instalado encarregado de gerenciar o login em portais cativos. Este tem sido um aplicativo separado desde o Android 5.0, mas interage com o NetworkMonitor para encaminhar algumas escolhas do usuário para o sistema.

Em dispositivos que usam o módulo Componentes de rede, os serviços acima são refatorados para um processo diferente e são acessados ​​por meio de interfaces AIDL estáveis . Os caminhos de refatoração são mostrados nas tabelas a seguir.

Caminhos de refatoração de serviços IP

Android 9 e inferior Em frameworks/base/services/net/java/android/net/ :
  • apf
  • dhcp
  • ip
  • netlink
  • util (parcialmente)
Android 10 e superior packages/modules/NetworkStack

Caminhos de refatoração de login do portal cativo

Android 9 e inferior Em frameworks/base/ :
  • core/java/android/net/captiveportal/
  • services/core/java/com/android/server/connectivity/NetworkMonitor.java
  • packages/CaptivePortalLogin/* (onde * = curinga)
Android 10 e superior packages/modules/CaptivePortalLogin (e alguns outros locais compartilhados)

Formato e dependências

O módulo Networking Components é entregue como três APKs: um para serviços IP, um para login de portal cativo e um para Network Stack Permission Config .

O módulo Componentes de rede depende do seguinte:

  • Métodos @hide privilegiados no servidor do sistema (por exemplo, em IConnectivityManager.aidl ). Essas APIs foram anotadas com @SystemApi e protegidas de forma adequada para que sejam acessíveis ao módulo, mas não a outros aplicativos privilegiados (por exemplo, usando uma nova permissão de assinatura).
  • Binder IPCs para netd definido em INetd.aidl . Esta interface foi convertida em AIDL estável e está sujeita a testes de conformidade.

Módulo de configuração de permissão de pilha de rede

O módulo Network Stack Permission Config não contém nenhum código, mas define uma permissão destinada ao uso pelos módulos Network Stack e Captive Portal Login. O sistema permite que os módulos com essa permissão executem tarefas de configuração de rede relacionadas no dispositivo.