Implementar o gerenciamento de dispositivos

Esta página descreve as diretrizes para fabricantes de dispositivos ativarem o gerenciamento de dispositivos no Android. Para oferecer suporte ao gerenciamento de dispositivos, eles precisam atender a todos os requisitos de compatibilidade de software definidos na seção 3.9. Administração de dispositivos do Documento de definição de compatibilidade do Android (CDD, na sigla em inglês). As diretrizes de implementação fornecidas aqui não são exaustivas e servem apenas como ponto de partida para implementar o gerenciamento de dispositivos Android.

Ativar o gerenciamento de dispositivos

Para ativar o gerenciamento de dispositivos no Android, ative estes recursos:

  • android.software.device_admin
  • android.software.managed_users

Para confirmar se um dispositivo oferece suporte ao gerenciamento de dispositivos, execute o seguinte comando adb em um dispositivo e verifique se esses recursos estão presentes: adb shell pm list features.

Requisitos de configuração

Os dispositivos que implementam o provisionamento de proprietário do dispositivo ou do perfil precisam apresentar as divulgações adequadas aos usuários finais durante a configuração (experiência pronta para uso ou configuração do perfil de trabalho). O AOSP oferece uma implementação de referência. O provisionamento gerenciado é o fluxo da interface do framework do Android invocado durante a configuração de um dispositivo totalmente gerenciado ou de um perfil de trabalho para garantir que os usuários do dispositivo sejam adequadamente informados sobre as implicações de definir um proprietário do dispositivo ou um perfil gerenciado no dispositivo. O provisionamento gerenciado realiza as seguintes atividades ou as delega a um detentor de função de gerenciamento de políticas do dispositivo durante o provisionamento:

  • Criptografa o dispositivo (se a criptografia estiver ativada).
  • Estabelece um usuário gerenciado.
  • Desativa apps opcionais.
  • Define o app do controlador de políticas de dispositivo (DPC, na sigla em inglês) do gerenciamento de mobilidade empresarial (EMM, na sigla em inglês) como proprietário do dispositivo ou do perfil.

Por sua vez, o app DPC realiza as seguintes atividades:

  • Adiciona contas de usuário.
  • Aplica a conformidade com a política do dispositivo.
  • Ativa outros apps do sistema.

Após a conclusão do provisionamento, o gerenciador de intents ADMIN_POLICY_COMPLIANCE do app DPC é executado no usuário do dispositivo totalmente gerenciado (para provisionamento do proprietário do dispositivo) ou no usuário do perfil de trabalho (para provisionamento do proprietário do perfil). Em seguida, o app DPC adiciona contas e aplica políticas.

Requisitos da tela de início

Para oferecer suporte ao gerenciamento de dispositivos, a tela de início precisa oferecer suporte a apps de identificação com selos de ícones de trabalho (fornecidos no AOSP para representar aplicativos gerenciados). Outros elementos da interface do usuário em dispositivos ou perfis gerenciados, como notificações, precisam usar recursos com selo de trabalho. O Launcher3 no AOSP já oferece suporte a esses recursos de identificação.

Apps de trabalho padrão

Por padrão, apenas os aplicativos essenciais para o funcionamento correto de um dispositivo gerenciado ou perfil de trabalho são ativados como parte do provisionamento empresarial do Android. Os fabricantes de dispositivos podem especificar uma lista de apps padrão usando estes arquivos XML:

  • vendor_required_apps_managed_profile.xml
  • vendor_required_apps_managed_device.xml
  • vendor_required_apps_managed_user.xml

Após o provisionamento do dispositivo, os admins de TI podem usar o console de EMM ou o Google Play gerenciado para enviar outros apps considerados necessários por uma organização.

Nos modos de proprietário do dispositivo (dispositivo totalmente gerenciado) e proprietário do perfil (perfil de trabalho):

  • Os apps sem ícones da tela de início são considerados componentes essenciais do sistema e são ativados automaticamente pelo Android.
  • Os apps com ícones da tela de início podem ser ativados por padrão durante o provisionamento do dispositivo, permitindo que os nomes dos pacotes sejam incluídos na lista de permissões em vendor_required_apps_managed_[device|profile|user].xml files.
  • Todos os outros apps são desativados automaticamente durante o provisionamento de dispositivo.

Implementação do proprietário do dispositivo em dispositivos configurados com o usuário do sistema headless

O Android 14 (nível 34 da API) apresenta a configuração do modo de usuário do sistema headless em que o usuário do sistema é um usuário em segundo plano e os usuários em primeiro plano são usuários secundários. Como a funcionalidade do proprietário do dispositivo depende tradicionalmente do usuário do sistema também estar em primeiro plano, a configuração do usuário do sistema headless traz alguns desafios exclusivos para dispositivos totalmente gerenciados (provisionamento do proprietário do dispositivo).

Modo de usuário do sistema headless

Figura 1. Modo de usuário do sistema headless.

Em um dispositivo no modo de usuário do sistema headless, um aplicativo do controlador de políticas de dispositivo (DPC) só pode ser definido como proprietário do dispositivo se oferecer suporte ao modo afiliado (HEADLESS_DEVICE_OWNER_MODE_AFFILIATED). O sistema verifica se o modo afiliado é compatível chamando getHeadlessDeviceOwnerMode(). O provisionamento de dispositivo é processado de acordo com o suporte do aplicativo DPC ao provisionamento do modo afiliado.