Testar o gerenciamento de dispositivos

Para garantir o suporte mínimo para perfis gerenciados, os dispositivos OEM precisam conter os seguintes elementos essenciais:

Para conferir uma lista completa de requisitos, consulte Implementar o gerenciamento de dispositivos. Para testar os recursos de gerenciamento de dispositivos, os proprietários podem usar o aplicativo TestDPC descrito abaixo.

Configurar o proprietário do dispositivo para testes

Use as instruções abaixo para configurar um ambiente de teste de proprietário do dispositivo.

  1. Faça a redefinição de fábrica do dispositivo de destino.
  2. Verifique se o dispositivo não contém nenhuma conta de usuário, por exemplo, aquelas usadas para fazer login em serviços on-line. Para verificar, acesse Configurações > Contas.
  3. Configure o aplicativo de teste usando um dos seguintes métodos:
  4. Defina o app TestDPC como o proprietário do dispositivo usando o seguinte comando:
    adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
    
  5. Faça a configuração de proprietário do dispositivo no dispositivo (criptografar, selecionar Wi-Fi).

Verificar a configuração do proprietário do dispositivo

Para verificar se o proprietário do dispositivo foi configurado corretamente, acesse Configurações > Segurança > Administradores de dispositivos e confirme se o TestDPC está na lista. Verifique se não é possível desativá-lo (isso significa que ele é um proprietário do dispositivo).

Relatórios de bugs e registros

No Android 7.0 e versões mais recentes, o cliente de política de dispositivo (DPC, na sigla em inglês) do proprietário do dispositivo pode receber relatórios de bugs e conferir registros de processos corporativos em um dispositivo gerenciado.

Para acionar um relatório de bug (ou seja, os dados equivalentes coletados por adb bugreport contendo dumpsys, dumpstate e dados do Logcat), use DevicePolicyController.requestBugReport. Depois que o relatório do bug é coletado, o usuário precisa dar consentimento para enviar os dados do relatório. Os resultados são recebidos por DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]. Para detalhes sobre o conteúdo do relatório de bugs, consulte Como ler relatórios de bugs.

Além disso, os DPCs do proprietário do dispositivo também podem coletar registros relacionados a ações que um usuário realizou em um dispositivo gerenciado. O registro de processos corporativos é necessário para todos os dispositivos que informam device_admin e são ativados por um novo buffer de segurança de registro que só pode ser lido pelo servidor do sistema (ou seja, $ adb logcat -b security não pode ler o buffer). O serviço ActivityManager e os componentes do Keyguard registram os seguintes eventos no buffer de segurança:

  • Inicialização dos processos do aplicativo
  • Ações da tela de bloqueio (por exemplo, falha e sucesso no desbloqueio)
  • Comandos adb emitidos para o dispositivo

Para reter os registros em reinicializações (não inicialização a frio) e disponibilizá-los para os DPCs do proprietário do dispositivo, o dispositivo precisa ter um kernel com pstore e pmsg ativados, e a DRAM precisa ser alimentada e atualizada em todas as etapas da reinicialização para evitar a corrupção dos registros retidos na memória. Para ativar o suporte, use a configuração config_supportPreRebootSecurityLogs em frameworks/base/core/res/res/values/config.xml.