Espaço privado

Figura 1: o espaço privado pode ser desbloqueado e bloqueado para mostrar ou ocultar apps sensíveis em um dispositivo.

Com o espaço privado, os usuários podem criar um ambiente seguro e isolado no dispositivo para manter apps sensíveis longe de olhares curiosos. Os apps no espaço privado ficam separados dos demais na tela de início e não aparecem na visualização de recentes, nas notificações, nas configurações e em outros apps quando o espaço privado está bloqueado.

O espaço isolado é um perfil separado do Android. Quando o usuário final adiciona ou instala um app no espaço privado, ele é instalado nesse novo perfil do Android. O sistema trata isso como uma nova instalação de app, e nenhum dado do app é copiado para o espaço privado. Quando o espaço é bloqueado, o usuário do perfil privado é pausado. Quando o espaço é desbloqueado, o usuário é iniciado.

Os apps no espaço privado são instalados como cópias separadas dos apps no espaço principal. O conteúdo do usuário (gerado ou baixado pelo usuário) e as contas de usuário são separados entre o espaço privado e o espaço principal. Você pode usar o Sharesheet do sistema e o seletor de fotos para dar aos apps acesso ao conteúdo entre espaços somente quando o espaço privado está desbloqueado.

O espaço privado é baseado no modelo multiusuário do Android e adiciona o seguinte perfil e tipo de usuário:

Perfil:
Privado
Tipo de usuário:
android.os.usertype.profile.PRIVATE

Configurações e apps da tela de início

É preciso atualizar as configurações e os apps de tela de início para oferecer suporte aos estados de bloqueio, desbloqueio e oculto. Quando o espaço privado está bloqueado, o acesso rápido oferece um ponto de entrada para desbloqueá-lo (exceto no estado oculto). Quando o espaço privado estiver bloqueado, o app Configurações não poderá revelar a existência do espaço privado.

Use LauncherApps#getLauncherUserInfo para identificar o usuário do perfil particular. Os apps de tela de início precisam registrar o estado bloqueado e o estado desbloqueado e mudar o estado do espaço privado na interface quando essas transmissões forem recebidas. Ambas as transmissões têm uma constante extra chamada EXTRA_USER que pode ser usada para se referir ao usuário do perfil particular.

Os apps de tela de início podem usar o método UserManager.isQuietModeEnabled para verificar o estado do perfil particular.

Perfil particular

O perfil privado adiciona o novo tipo de perfil android.os.usertype.profile.PRIVATE para uso com o espaço privado. O perfil privado pode existir no mesmo dispositivo que um perfil de trabalho e um perfil clonado. É um espaço isolado separado do usuário principal do Android. Quando o espaço privado é desbloqueado, os apps ficam visíveis nas configurações, na planilha de compartilhamento, no seletor de fotos e na interface dos Documentos. Os apps no espaço privado não aparecem em nenhuma dessas interfaces quando o espaço privado está bloqueado. O espaço privado só pode ter uma instância em um único dispositivo e só pode existir para o usuário principal, não para usuários secundários ou em outros perfis.

Permissões

Os apps de tela de início precisam ter a permissão android.permission.ACCESS_HIDDEN_PROFILES e a função android.app.role.RoleManager.ROLE_HOME para acessar perfis particulares.

Implementações que não usam o iniciador do AOSP precisam modificar o iniciador para adicionar suporte ao perfil privado. Leia mais sobre como desenvolver um app de tela de início com espaço privado em Apps de tela de início no site para desenvolvedores.

Intents

As intents de telefonia são encaminhadas ao usuário principal e mostram uma notificação. Todas as outras intents são limitadas ao perfil particular e não são redirecionadas.

Mover arquivos para o espaço privado

A partir do Android 16 QPR2, os usuários podem mover ou copiar arquivos de fora do espaço privado para o espaço privado. Esse recurso oferece uma maneira segura e simples para os usuários manterem documentos, fotos e outros arquivos sensíveis no perfil particular em sandbox.

O processo é iniciado com um novo atalho Adicionar arquivos do botão Adicionar disponível no contêiner de inicialização do espaço privado. Quando um usuário seleciona essa opção, ele pode navegar e selecionar arquivos de fora do espaço privado usando o seletor de arquivos do sistema. Depois de selecionar os arquivos, é possível copiá-los, deixando os originais no lugar, ou movê-los, o que exclui os arquivos originais após uma transferência bem-sucedida.

A transferência de arquivos é gerenciada por um novo componente do sistema que é executado como um serviço em primeiro plano apenas no perfil particular, garantindo que o processo seja seguro e confiável. Os arquivos são salvos na pasta Downloads do espaço privado.