Usar perfis de trabalho

Um perfil de trabalho é um perfil gerenciado que tem dados de apps separados do perfil de usuário principal, mas compartilha algumas configurações em todo o sistema, como Wi-Fi e Bluetooth. O principal objetivo de um perfil de trabalho é criar um contêiner isolado e seguro para armazenar dados gerenciados. O administrador de um perfil de trabalho tem controle total sobre o escopo, a entrada, a saída e o ciclo de vida dos dados. Confira algumas características dos perfis de trabalho:

  • Criação. Qualquer app no usuário principal pode criar um perfil de trabalho. O usuário é notificado sobre os comportamentos do perfil de trabalho e a aplicação da política antes da criação.

  • Gerenciamento. Os apps conhecidos como proprietários de perfil podem invocar APIs de maneira programática na classe DevicePolicyManager para restringir o uso. Os proprietários do perfil são definidos na configuração inicial. As políticas exclusivas dos perfis de trabalho envolvem restrições de apps, capacidade de atualização e comportamentos de intent.

  • Tratamento visual. Os apps, as notificações e os widgets do perfil de trabalho são identificados com um selo e geralmente disponibilizados em linha com os elementos da interface do usuário (UI) do usuário principal.

Detalhes da implementação

Os perfis de trabalho são implementados como usuários secundários, de modo que os apps em execução no perfil de trabalho têm um UID de uid = 100000 \* userid + appid. Esses perfis têm dados de apps separados (/data/user/userid), assim como os usuários principais.

O AccountManagerService mantém uma lista separada de contas para cada usuário. As diferenças entre a conta de um usuário do perfil de trabalho e a de um usuário secundário comum incluem o seguinte:

  • O perfil de trabalho está associado ao usuário principal e é iniciado com ele durante a inicialização.

  • As notificações para perfis de trabalho são ativadas pelo ActivityManagerService, permitindo que o perfil de trabalho compartilhe a pilha de atividades com o usuário principal.

  • Outros serviços compartilhados do sistema incluem IME, serviços A11Y, Wi-Fi e NFC.

  • As APIs do Acesso rápido aos apps permitem que ele mostre apps com selo e widgets na lista de permissões do perfil de trabalho ao lado dos apps no perfil principal sem trocar de usuário.

Segregação de dados

Os perfis de trabalho usam as seguintes regras de segregação de dados.

Apps

Quando o mesmo app existe no usuário principal e no perfil de trabalho, os apps são delimitados com os próprios dados segregados. Em geral, os apps agem de forma independente e não podem se comunicar diretamente com instâncias além do limite entre perfil e usuário a menos que tenham permissão INTERACT_ACROSS_PROFILES ou App-ops.

Contas

As contas no perfil de trabalho são exclusivas do usuário principal, e as credenciais não podem ser acessadas em toda a fronteira perfil-usuário. Somente apps no contexto respectivo podem acessar as contas correspondentes.

Intents

O admin controla se as intents são resolvidas dentro ou fora do perfil de trabalho. Por padrão, os apps do perfil de trabalho são definidos para permanecer na exceção do perfil de trabalho da API Device Policy.

Identificadores de dispositivo

Em dispositivos pessoais com um perfil de trabalho, o Android 12 ou versões mais recentes removem o acesso a identificadores de hardware do dispositivo (IMEI, MEID, número de série) e fornecem um ID específico de registro exclusivo que identifica o registro do perfil de trabalho de uma organização específica. O ID de inscrição permanece estável mesmo após redefinições para a configuração original, permitindo um rastreamento confiável do inventário de dispositivos com perfis de trabalho.

Dispositivos pessoais com um perfil de trabalho precisam usar o ID específico de registro. Dispositivos da empresa, incluindo perfil de trabalho e totalmente gerenciados, também podem ativar o uso do ID. Para usar o ID específico do registro, os EMMs precisam definir o ID da organização para cada dispositivo gerenciado. Depois disso, eles podem ler o ID específico do registro no dispositivo e processá-lo como um número de série. Para mais detalhes, consulte Melhorias na segurança e na privacidade do perfil de trabalho.

Configurações

A aplicação de configurações é limitada ao perfil de trabalho, com exceções para configurações de tela de bloqueio e criptografia que são limitadas ao dispositivo e compartilhadas entre o usuário principal e o perfil de trabalho. Além dessas exceções, um proprietário do perfil não tem privilégios de administrador do dispositivo fora do perfil de trabalho.

Gerenciamento de dispositivos com um perfil de trabalho

O Android 5.0 e versões mais recentes oferecem suporte ao gerenciamento de dispositivos para perfis de trabalho em dispositivos pessoais do tipo traga seu próprio dispositivo (BYOD) usando a classe DevicePolicyManager. Além disso, o Android 11 introduziu o conceito de perfis de trabalho em dispositivos corporativos. A capacidade de gerenciamento de dispositivos no perfil de trabalho permanece a mesma para BYOD e dispositivos corporativos. No entanto, os perfis de trabalho em dispositivos corporativos podem oferecer recursos/políticas adicionais, como installSystemUpdate, setScreenCaptureDisabled, e setPersonalAppsSuspended, que podem estender a aplicação da política de administrador além do perfil de trabalho para determinadas políticas em todo o dispositivo.

  • Perfil de trabalho em um dispositivo pessoal (BYOD): o dispositivo é pessoal e contém um perfil de trabalho gerenciado por um admin de TI associado ao empregador.

  • Perfil de trabalho em um dispositivo da empresa: o dispositivo é fornecido ou pertence ao empregador e contém um perfil de trabalho gerenciado por um administrador de TI associado ao empregador. Os apps podem chamar isOrganizationOwnedDeviceWithManagedProfile() para determinar se o dispositivo foi provisionado como um dispositivo de propriedade da organização com um perfil gerenciado.

Para mais informações sobre a criação de perfis de trabalho e o uso da API Device Policy, consulte Criar um perfil de trabalho.

Proprietários do perfil

Um app cliente da política de dispositivo (DPC) funciona como proprietário do perfil quando um perfil de trabalho é criado. O app cliente DPC geralmente é fornecido por um parceiro de gerenciamento de mobilidade empresarial (EMM), como a Política de dispositivo do Google Apps, e pode aplicar políticas quando definido como proprietário do perfil. O perfil de trabalho tem instâncias de apps com um ícone visualmente diferente das instâncias pessoais. O ícone identifica um app como de trabalho. O EMM tem controle apenas sobre o perfil de trabalho (apps e dados de trabalho) e não sobre o espaço pessoal. As políticas de dispositivo são aplicadas apenas ao perfil de trabalho, com algumas exceções, como a aplicação da tela de bloqueio, que é válida em todo o dispositivo.

Experiência do usuário no perfil de trabalho

O Android 9 ou versões mais recentes criam uma integração mais estreita entre os perfis de trabalho e a plataforma Android, facilitando a separação das informações pessoais e de trabalho nos dispositivos. As mudanças no perfil de trabalho aparecem no acesso rápido e oferecem uma experiência consistente em todos os dispositivos gerenciados.

Os usuários podem ativar ou desativar o perfil de trabalho nas configurações ou no menu "Configurações rápidas". No Android 9 ou versões mais recentes, as implementações de dispositivos podem incluir uma alternância no rodapé da guia "Trabalho" para que os usuários ativem ou desativem o perfil de trabalho. A ativação do perfil de trabalho é feita de forma assíncrona e aplicada a todos os perfis de usuário válidos. Esse processo é controlado pela classe WorkModeSwitch.

Dispositivos com uma bandeja de apps

No Android 9 ou mais recente, as mudanças na UX do perfil de trabalho para o Launcher3 ajudam os usuários a manter perfis pessoais e de trabalho separados. A gaveta de apps oferece uma visualização em guias para distinguir os apps do perfil pessoal dos apps do perfil de trabalho. Quando os usuários acessam a guia do perfil de trabalho pela primeira vez, uma visualização educacional é apresentada para ajudar na navegação.

Os usuários podem alternar entre as diferentes visualizações de perfil usando as guias de perfil ou uma interface de usuário semelhante na parte de cima da gaveta de apps:


Figura 1. Visualização da guia pessoal

Figura 2. Visualização da guia "Trabalho", botão de alternância do perfil de trabalho

A visualização com guias é implementada como parte da classe AllAppsContainerView Launcher3. Para uma implementação de referência do indicador de perfil com guias, consulte a classe PersonalWorkSlidingTabStrip.

Mensagem de educação do usuário em dispositivos com uma guia "Trabalho"

O Android 9 ou versões mais recentes oferecem uma visualização educativa que informa aos usuários sobre a finalidade da guia "Trabalho" e como facilitar o acesso aos apps de trabalho. Usando o Launcher3, uma visualização educacional pode ser mostrada na tela da guia "Trabalho" quando os usuários abrem a guia pela primeira vez, como mostrado na figura:

Visualização educativa

Figura 3. Visualização educativa

Dispositivos sem uma gaveta de apps

Para launchers sem uma gaveta de apps, é recomendável continuar colocando atalhos para os apps do perfil de trabalho na pasta de trabalho.

Implementações de tela de início personalizadas podem usar getProfiles() e getActivityList() para recuperar uma lista de apps com um ícone de tela de início para o usuário do perfil de trabalho.

Em dispositivos que implementam uma pasta de trabalho, os usuários podem acessar os apps do perfil de trabalho abrindo a pasta de trabalho:


Figura 4. Pasta de trabalho fechada

Figura 5. Pasta de trabalho aberta

Mensagem de educação do usuário em dispositivos com uma pasta de trabalho

Para launchers sem uma gaveta de apps, em que uma pasta de trabalho contém apps de trabalho, a mensagem de educação sobre o perfil de trabalho pode ser mostrada na forma de uma dica de ferramenta dispensável quando o usuário abre a pasta de trabalho pela primeira vez:

Dica dispensável

Figura 3. Dica dispensável

Validar a experiência do usuário no perfil de trabalho

A maneira mais simples de testar a experiência do usuário do perfil de trabalho é configurar um perfil de trabalho usando o app Test DPC. As etapas a seguir descrevem como configurar um perfil de trabalho em um dispositivo pessoal (cenário BYOD):

  1. Comece com um dispositivo redefinido de fábrica e conclua a configuração do perfil pessoal usando uma Conta do Google pessoal ou use um dispositivo com um perfil pessoal como ponto de partida.

  2. Instale o app Test DPC na Google Play Store.

  3. Abra o iniciador ou a gaveta de apps e selecione Configurar o Test DPC.

  4. Siga as instruções na tela para configurar um perfil de trabalho:


    Figura 4. Configurar perfil de trabalho


    Figura 5. Adicionar contas


    Figura 6. Configuração concluída

  5. Abra o acesso rápido aos apps ou a gaveta de apps e verifique se a guia de trabalho está presente e contém um rodapé do perfil de trabalho. Implementações alternativas de fabricantes de dispositivos podem conter uma pasta de trabalho em vez de uma guia de trabalho.

  6. Verifique se é possível ativar e desativar o perfil de trabalho nas Configurações rápidas (ou configurações) confirmando se os apps do perfil de trabalho (apps com o ícone de pasta) estão ativados e desativados conforme esperado. Em algumas implementações de dispositivos, os apps de trabalho podem ficar esmaecidos quando o perfil de trabalho está desativado. Outras implementações, como as que têm uma guia de trabalho, podem mostrar uma sobreposição com uma mensagem informando que o perfil de trabalho está desativado. As figuras a seguir mostram exemplos de perfis de trabalho ativados e desativados em um dispositivo que implementa uma guia de trabalho:


    Figura 7. Ativar, perfil de trabalho ativado

    Figura 8. Botão desativado, perfil de trabalho desativado

Crachá do app do perfil de trabalho

No Android 9 ou versões mais recentes, por motivos de acessibilidade, a cor do selo de trabalho é azul (#1A73E8) em vez de laranja.