Funções do Android

Uma função é um nome exclusivo no sistema associado a determinadas permissões e privilégios. Os aplicativos podem solicitar a manutenção de determinadas funções por meio da API do Android, especificamente invocando métodos na classe RoleManager .

Consulte a lista a seguir para funções disponíveis e seus requisitos correspondentes.

Papel Requisitos
ASSISTENTE Pelo menos um de:
  • O aplicativo possui uma atividade que realiza ações de assistência, dadas as informações sobre o contexto do usuário quando ele solicitou a assistência (por exemplo, o nome do pacote do aplicativo em primeiro plano atual e suas informações contextuais).
  • O aplicativo possui um serviço de interação por voz sempre ativo, controlado pela permissão android.permission.BIND_VOICE_INTERACTION , que pode realizar reconhecimento de voz e hospedar sessões ativas de interação por voz. Além disso, o aplicativo possui um sinalizador explícito indicando que o serviço é capaz de lidar com a ação de assistência.
NAVEGADOR Tudo de:
  • O aplicativo tem uma atividade, que os aplicativos podem invocar por meio de solicitações de intenção implícita, que exibe uma página da Web correspondente a um endereço http:// .
  • O aplicativo precisa lidar com a navegação entre links. Ou seja, se o usuário estiver visualizando uma página web e clicar em um endereço http:// no texto, o aplicativo precisa ser capaz de exibir o conteúdo correspondente ao link selecionado sem intervenção adicional do usuário.
  • O aplicativo precisa ser capaz de fornecer informações de geolocalização atuais do dispositivo às páginas da web quando for solicitado e o usuário aprovar a solicitação.
DISCADOR Tudo de:
  • O aplicativo tem uma atividade, que os aplicativos podem invocar por meio de solicitações de intenção implícita, que fornece a interface do usuário durante a chamada enquanto o dispositivo está em uma chamada.
  • O aplicativo pode lidar com intenções de chamada recebida, exibir as informações relacionadas à chamada (por exemplo, o número de telefone do chamador) para o usuário e permitir que o usuário atenda ou recuse a chamada.
  • O aplicativo fornece ao usuário um meio de iniciar chamadas e ver um histórico de chamadas em seu dispositivo.
SMS Tudo de:
  • O aplicativo atende a todos os requisitos para aplicativos de SMS .
  • O aplicativo tem uma atividade que os aplicativos podem invocar por meio de solicitações de intenção implícita, que podem enviar uma mensagem para um número de telefone.
  • O aplicativo possui um serviço, controlado pela permissão android.permission.SEND_RESPOND_VIA_MESSAGE e invocável por intenções implícitas, que pode entregar mensagens recebidas do aplicativo Phone quando o usuário opta por responder por mensagem durante uma chamada recebida. O aplicativo pode entregar mensagens por meio de seu próprio sistema de mensagens.
  • O aplicativo possui dois receptores de transmissão, um controlado pela permissão android.permission.BROADCAST_SMS e outro bloqueado pela permissão android.permission.BROADCAST_WAP_PUSH , que podem ouvir mensagens SMS e MMS baseadas em texto enviadas para o dispositivo, respectivamente. O aplicativo é então responsável por escrever as mensagens para o provedor de SMS e notificar os usuários.
EMERGÊNCIA Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • O app possui uma atividade que apresenta as informações emergenciais do usuário. Qualquer pessoa pode navegar para esta tela através do botão Emergência na atividade Discador de Emergência.
LAR O aplicativo possui uma atividade que pode iniciar a tela inicial quando o usuário pressiona o botão home. A tela inicial deve mostrar ícones de aplicativos, widgets e oferecer suporte à navegação com base em botões ou gestos (por exemplo, deslizar para cima para ver todos os aplicativos).
CALL_REDIRECTION O aplicativo possui um serviço, controlado pela permissão android.permission.BIND_CALL_REDIRECTION_SERVICE , ao qual a estrutura Telecom pode se vincular. O serviço recebe o número de telefone de saída do framework Telecom e realiza uma das seguintes ações:
  • Permita que a chamada seja feita como está.
  • Altere o número de saída para rotear por meio de um número proxy.
  • Cancele a chamada.
MONITORAMENTO DE LIGAÇÕES O aplicativo possui um serviço, controlado pela permissão android.permission.BIND_SCREENING_SERVICE , que executa duas funções:
  1. Bloqueio/triagem de chamadas: O serviço pode escolher quais chamadas devem ser enviadas para o aplicativo discador do telefone (e potencialmente tocar, dado DND/volume) e quais devem ser enviadas silenciosamente para o correio de voz.
  2. Identificação de chamada: O serviço pode identificar e exibir informações sobre uma chamada por meio de uma interface de usuário.
SYSTEM_GALLERY Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo fornece uma interface de usuário para os usuários armazenarem, organizarem e exibirem seus vídeos e imagens.
SYSTEM_AUTOMOTIVE_CLUSTER Tudo de:
  • O aplicativo é um aplicativo de sistema no setor automotivo.
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo fornece funcionalidade para um display de cluster automotivo (normalmente adjacente ao volante) para que os usuários atendam chamadas e acessem listas de contatos e registros de chamadas.
COMPANION_DEVICE_WATCH O aplicativo pode fazer solicitações para ser associado e gerenciar um dispositivo de relógio (usando a API fornecida pela classe CompanionDeviceManager ). Depois que o relógio e o aplicativo estiverem conectados por meio da IU fornecida pelo aplicativo, os usuários poderão gerenciar o relógio no aplicativo, incluindo a sincronização de contatos e calendário e o gerenciamento de notificações e chamadas telefônicas.
SISTEMA_PROJEÇÃO_AUTOMOTIVA Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo permite que a tela do telefone seja projetada no display do veículo. Ele permite que os motoristas acessem e controlem aplicativos em telefones Android, incluindo música, navegação, chamadas telefônicas e pesquisa do Google, usando mecanismos de entrada no veículo, incluindo toque, controles no volante e comandos de voz.
SYSTEM_SHELL Tudo de:
  • O aplicativo é um aplicativo de sistema ao qual é atribuído o UID Process.SHELL_UID .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo fornece uma interface que funciona no nível da linha de comando para que os usuários possam interagir com o sistema operacional Android. Por exemplo, exibindo o conteúdo de uma pasta ou iniciando aplicativos. Os comandos Shell podem ser executados programaticamente por aplicativos (desde que as permissões necessárias tenham sido concedidas) ou a partir da ferramenta ADB.
SYSTEM_CONTACTS Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo fornece uma interface de usuário para os usuários gerenciarem seus contatos (por exemplo, visualizar, compartilhar, adicionar, remover ou pesquisar um contato). O aplicativo atualiza o provedor de Contatos quando o usuário atualiza seus contatos no aplicativo. Os usuários também podem ligar, enviar e-mail ou mensagens de texto para seus contatos a partir do aplicativo.
SYSTEM_SPEECH_RECOGNIZER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo oferece um serviço que pode realizar reconhecimento de fala.
  • Quando o aplicativo recebe transmissões de microfone ao vivo de outro aplicativo para reconhecimento de fala, ele atribui corretamente o uso do microfone ao aplicativo de chamada e atualiza as estatísticas de operação do aplicativo de acordo.
SYSTEM_WIFI_COEX_MANAGER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O app conta com um serviço que define dinamicamente uma lista de canais Wi-Fi que o aparelho deve evitar usar devido a interferência do celular.
SISTEMA_BEM-ESTAR Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo deve fornecer aos usuários funcionalidades para reduzir a distração e fornecer estatísticas sobre como eles usam o dispositivo (por exemplo, o tempo de tela por semana).
SYSTEM_TELEVISION_NOTIFICATION_HANDLER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo deve mostrar notificações de alerta aos usuários em dispositivos de TV. O aplicativo também deve mostrar notificações ativas atuais quando a intenção android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL for enviada (do SystemUI).
SYSTEM_COMPANION_DEVICE_PROVIDER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo deve ser capaz de detectar dispositivos periféricos nas proximidades. Deve ter uma UI onde o usuário possa confirmar se um determinado dispositivo periférico deve ser associado e gerenciado por um aplicativo. Depois que o usuário confirma, o aplicativo de gerenciamento concede permissão ao aplicativo associado para acessar o dispositivo periférico (por exemplo, seu nome, endereço, classe e estado de ligação) e pode iniciar o processo de ligação.
SYSTEM_DOCUMENT_MANAGER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo possui uma atividade que permite aos usuários acessar documentos existentes e criar novos documentos no dispositivo.
  • O aplicativo deve atender a todos os requisitos descritos na seção 2.2.3 do Android CDD. Software sob o título [3.2.3.1/H-0-1] .
SYSTEM_ACTIVITY_RECOGNIZER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • O aplicativo possui um serviço, controlado por android.permission.ACTIVITY_RECOGNITION , que pode realizar o reconhecimento de atividades (por exemplo, correr ou andar de bicicleta).
SYSTEM_UI Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo possui uma interface para os usuários interagirem com seus telefones. Por exemplo, tela principal do telefone, navegação, aplicativos recentes, configurações rápidas, barra de notificação, tela de bloqueio, controle de volume.
SYSTEM_TELEVISION_REMOTE_SERVICE Tudo de:
  • O aplicativo é um aplicativo de sistema na Android TV.
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo possui um serviço que pode se comunicar com o dispositivo HID do controle remoto da TV (por exemplo, via BLE), injetar eventos (por exemplo, cliques em botões) e enviar outros dados (por exemplo, fluxo de áudio de um microfone embutido no controle remoto). ) na plataforma.
SYSTEM_UI_INTELLIGENCE Tudo de:
  • Sendo um serviço pré-instalado que fornece, por meio de APIs de estrutura (APIs públicas ou de sistema), um processador inteligente no dispositivo para recursos de UI do sistema (por exemplo, prever e mostrar os próximos aplicativos para os usuários).
  • O serviço deve atender a todos os requisitos descritos na seção 9.8.6 Content Capture do CDD do Android.
  • Não pode ter a permissão android.permission.INTERNET . Em vez disso, deve aceder à Internet através de APIs bem definidas num projeto de código aberto.
  • Ele não pode ser vinculado a aplicativos, exceto aos seguintes aplicativos do sistema: Bluetooth, Contatos, Mídia, Telefonia, SystemUI e componentes que fornecem APIs da Internet. Cada ligação permitida deve ser definida explicitamente por meio da configuração <allow-association> na configuração do sistema.
  • Ele não pode compartilhar dados com aplicativos, a menos que haja uma ação direta do usuário (por exemplo, o usuário pressiona explicitamente um botão sempre que os dados são compartilhados).
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE Tudo de:
  • Idêntico às condições para SYSTEM_UI_INTELLIGENCE , exceto que o serviço pré-instalado fornece um processador inteligente no dispositivo para áudio ambiente (por exemplo, reconhecendo músicas reproduzidas perto do dispositivo).
SYSTEM_AUDIO_INTELLIGENCE Tudo de:
  • Idêntico às condições para SYSTEM_UI_INTELLIGENCE , exceto que o serviço pré-instalado fornece um processador inteligente para áudio no dispositivo (por exemplo, legenda de vídeos, podcasts, chamadas telefônicas, chamadas de vídeo e mensagens de áudio).
SYSTEM_NOTIFICATION_INTELLIGENCE Tudo de:
  • Idêntico às condições para SYSTEM_UI_INTELLIGENCE , exceto que o serviço pré-instalado fornece um processador inteligente no dispositivo para notificações (por exemplo, sugerindo respostas e ações para notificações de mensagens).
SYSTEM_TEXT_INTELLIGENCE Tudo de:
  • Idêntico às condições para SYSTEM_UI_INTELLIGENCE , exceto que o serviço pré-instalado fornece um processador inteligente para texto no dispositivo (por exemplo, fornecendo tradução ao vivo ou preenchimento automático).
SYSTEM_VISUAL_INTELLIGENCE Tudo de:
  • Idêntico às condições para SYSTEM_UI_INTELLIGENCE , exceto que o serviço pré-instalado fornece um processador inteligente no dispositivo para recursos visuais que envolvem a análise de dados da câmera. Por exemplo, manter a tela do telefone viva enquanto o usuário olha para ela ou determinar a orientação ideal da tela com base na orientação do rosto do usuário na câmera frontal do dispositivo.
COMPANION_DEVICE_APP_STREAMING Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo pode criar e gerenciar canais de comunicação com dispositivos conectados para que possam trocar dados. O aplicativo e os dispositivos conectados devem autenticar-se mutuamente (por exemplo, comprovando seu conhecimento de chaves compartilhadas) para estabelecer esses canais de comunicação. Os canais de comunicação devem possuir proteção criptografada.
  • O aplicativo pode enviar notificações do dispositivo local para o dispositivo conectado para permitir que o usuário execute ações nas notificações do dispositivo conectado.
  • Ser capaz de transmitir os metadados necessários para o streaming de aplicativos para o dispositivo conectado, como a lista de aplicativos disponíveis no dispositivo local.
  • Ser capaz de transmitir aplicativos do dispositivo local para o dispositivo conectado depois que o usuário tiver indicado seu desejo de fazê-lo com consentimento explícito (no telefone ou no dispositivo conectado).
  • Ser capaz de reproduzir (injetar) eventos que acontecem em um aplicativo transmitido em um dispositivo conectado de volta ao dispositivo local. Por exemplo, reproduzir um evento de toque no tablet nas mesmas coordenadas do telefone.
  • O aplicativo pode substituir o fluxo do microfone do dispositivo local pelo fluxo do microfone de um dispositivo conectado enquanto um aplicativo transmitido estiver usando o microfone.
  • O aplicativo captura o áudio do dispositivo e o transmite para o dispositivo conectado.
  • Deve bloquear o fluxo da câmera do dispositivo local enquanto um aplicativo transmitido estiver usando a câmera.
  • Deve verificar a integridade da construção do sistema operacional do dispositivo conectado (por exemplo, usando o atestado do dispositivo como em VerifiedBootState ).
  • Transmita apenas aplicativos onde há apenas uma conta correspondente no registro de conta do dispositivo (por exemplo, o AccountManager no Android) em ambos os dispositivos. Se este não for o caso, a transmissão deve ser autorizada com um código único mostrado no dispositivo de origem e inserido no dispositivo conectado. Observe que no caso de dispositivos que suportam vários usuários (e não várias contas) com o mesmo isolamento de dados garantido como no Android multiusuário , um usuário conta como um dispositivo.
  • Deve interromper a transmissão e desconectar-se imediatamente de um dispositivo conectado se a autenticação da conta no dispositivo conectado expirar ou for revogada.
  • Deve verificar se um dispositivo conectado está dentro do alcance do Bluetooth do dispositivo local antes e durante a transmissão.
  • Deve desconectar as sessões de streaming do aplicativo em andamento se o usuário não interagir com o dispositivo conectado (por exemplo, teclado, tela sensível ao toque e mouse estão inativos) por 5 minutos. Os aplicativos de streaming de vídeo estão isentos deste requisito.
  • Se o dispositivo de origem usar o Lockscreen Knowledge Factor (LSKF), quando a tela estiver bloqueada, o aplicativo não deverá transmitir aplicativos para um dispositivo conectado, a menos que esse dispositivo tenha uma tela de bloqueio e esteja desbloqueado.
  • Se o dispositivo for gerenciado por um administrador, o aplicativo deverá respeitar as políticas definidas pelo administrador sobre como ativar ou desativar o streaming de aplicativos para dispositivos próximos (por exemplo, usando as configurações do DevicePolicyManager no Android).
  • Deve garantir que o display remoto e todas as fontes de eventos de entrada remota pertençam ao mesmo dispositivo lógico (por exemplo, um display remoto e um teclado conectado) da perspectiva do usuário e que os eventos sejam roteados adequadamente.
  • O usuário deve poder encerrar o streaming do dispositivo local, por exemplo, usando um botão em uma notificação persistente. Esse comportamento é controlado pela tela de bloqueio, se o telefone tiver um bloqueio de tela definido.
  • Deve mostrar uma affordance no dispositivo de origem quando o streaming estiver acontecendo em outro dispositivo, como um ícone na barra de status ou uma notificação persistente.
DEVICE_POLICY_MANAGEMENT Tudo de:
  • Somente OEMs podem conceder essa função ao aplicativo. Os aplicativos não podem solicitar essa função, pois ela deve ser concedida imediatamente ao nome do pacote definido pelo OEM quando o dispositivo é enviado.
  • O aplicativo deve ser capaz de provisionar um perfil gerenciado (proprietário do perfil) ou um dispositivo gerenciado (proprietário do dispositivo), incluindo o download/instalação do Device Policy Client apropriado para ser o proprietário do dispositivo/perfil, se necessário.
  • Opcionalmente, o aplicativo pode atualizar dinamicamente recursos como strings e drawables usados ​​para gerenciamento de políticas de dispositivos.
  • O aplicativo pode ser um aplicativo de sistema pré-instalado ou ser baixado e instalado antes do provisionamento.
  • Para casos de provisionamento de proprietário de perfil, quando o aplicativo titular da função é instalado em um determinado usuário do Android , ele deve ser instalado em todos os perfis aplicáveis ​​desse usuário.
SYSTEM_APP_PROTECTION_SERVICE Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • O único objetivo do aplicativo é detectar aplicativos potencialmente prejudiciais (aplicativos que podem colocar usuários, dados de usuários ou dispositivos em risco, como cavalos de Tróia, phishing e aplicativos de spyware) ou software indesejado para dispositivos móveis .
  • O aplicativo deve atender a todos os requisitos descritos na seção 9.8.6 Content Capture do CDD do Android.
  • Não deve declarar a permissão normal android.permission.INTERNET . Em vez disso, deve aceder à Internet através de APIs bem definidas num projeto de código aberto.
  • Ele não deve ser vinculado a aplicativos, exceto aos seguintes aplicativos do sistema: Controlador de permissão e componentes que fornecem APIs da Internet. Cada ligação permitida deve ser definida explicitamente por meio da configuração <allow-association> na configuração do sistema.
  • Ele não deve compartilhar dados com aplicativos, a menos que haja uma ação direta do usuário (por exemplo, o usuário pressiona explicitamente um botão sempre que os dados são compartilhados).
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • Deve transferir dados de calendário do telefone iOS ou Android do usuário para o dispositivo Android Auto. O dispositivo Android Auto deve armazenar esses dados de calendário no provedor de calendário .
  • O aplicativo deve fornecer um componente de IU no telefone que o usuário possa usar para ativar a sincronização de calendários e selecionar os calendários a serem sincronizados. O aplicativo deve fornecer um componente de IU no telefone que o usuário possa usar para desativar a sincronização do calendário.
  • Deve funcionar sem conexão com a internet. Por exemplo, usando conexões diretas com ou sem fio.
AUTOMOTIVE_NAVIGATION Tudo de:
  • O aplicativo tem uma atividade, que os aplicativos podem invocar por meio de solicitações de intenção implícita, que mostra a localização atual e os arredores do usuário.
  • O aplicativo tem uma atividade, que os aplicativos podem invocar por meio de solicitações de intenção implícita, que permite ao usuário navegar para uma localização geográfica especificada.
  • Possui uma atividade que é iniciada no painel de instrumentos quando o aplicativo mantém o foco de navegação . A atividade deve mostrar a localização atual e os arredores do usuário e permitir que ele navegue até uma localização geográfica específica.
COMPANION_DEVICE_COMPUTER Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • Permita que os usuários espelhem notificações e acessem fotos e mídia do telefone em um computador conectado.
SYSTEM_SETTINGS_INTELLIGENCE Pelo menos um de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • Possui um serviço que fornece recursos de inteligência para o app Configurações, como sugestões e pesquisas.
NOTAS Tudo de:
COMPANION_DEVICE_GLASSES O aplicativo pode fazer solicitações para associação e gerenciamento de um dispositivo de óculos (usando a API fornecida pela classe CompanionDeviceManager ). Depois que o dispositivo de óculos e o aplicativo estiverem conectados usando a interface de usuário fornecida pelo CDM, os usuários poderão gerenciar seus dispositivos de óculos, concedendo-lhe acesso a contatos e permissão para gerenciar notificações e chamadas telefônicas.
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING Tudo de:
  • O aplicativo é um aplicativo de sistema .
  • Somente OEMs podem conceder essa função ao aplicativo.
  • O aplicativo pode criar e gerenciar canais de comunicação com dispositivos conectados para que os dispositivos possam trocar dados. O aplicativo e os dispositivos conectados devem autenticar-se mutuamente (por exemplo, comprovando seu conhecimento de chaves compartilhadas) para estabelecer esses canais de comunicação. Os canais de comunicação devem possuir proteção criptografada.
  • O aplicativo pode enviar notificações do dispositivo local para o dispositivo conectado para permitir que o usuário execute ações nas notificações no dispositivo conectado.
  • Ser capaz de transmitir os metadados necessários para o streaming de aplicativos para o dispositivo conectado, como a lista de aplicativos disponíveis no dispositivo local.
  • Ser capaz de transmitir aplicativos do dispositivo local para o dispositivo conectado depois que o usuário tiver indicado seu desejo de fazê-lo com consentimento explícito (no telefone ou no dispositivo conectado).
  • Ser capaz de reproduzir (injetar) eventos que acontecem em um aplicativo transmitido em um dispositivo conectado de volta ao dispositivo local. Por exemplo, reproduzir um evento de toque no tablet nas mesmas coordenadas do telefone ou reproduzir um evento de entrada que ocorreu no dispositivo de óculos com a mesma semântica de entrada do telefone.
  • O aplicativo pode substituir o fluxo do microfone do dispositivo local pelo fluxo do microfone de um dispositivo conectado enquanto um aplicativo transmitido estiver usando o microfone.
  • O aplicativo captura o áudio do dispositivo e o transmite para o dispositivo conectado.
  • Deve verificar a integridade da construção do sistema operacional do dispositivo conectado (por exemplo, usando o atestado do dispositivo como em VerifiedBootState ).
  • Transmita apenas aplicativos onde há apenas uma conta correspondente no registro de conta do dispositivo (por exemplo, o AccountManager no Android) em ambos os dispositivos. Se este não for o caso, a transmissão deve ser autorizada com um código único mostrado no dispositivo de origem e inserido no dispositivo conectado. Observe que no caso de dispositivos que suportam vários usuários (e não várias contas) com o mesmo isolamento de dados garantido como no Android multiusuário , um usuário conta como um dispositivo.
  • Deve interromper a transmissão e desconectar-se imediatamente de um dispositivo conectado se a autenticação da conta no dispositivo conectado expirar ou for revogada.
  • Se o dispositivo de origem usar o Lockscreen Knowledge Factor (LSKF), quando a tela estiver bloqueada, o aplicativo não deverá transmitir aplicativos para um dispositivo conectado, a menos que esse dispositivo tenha uma tela de bloqueio e esteja desbloqueado.
  • Se o dispositivo for gerenciado por um administrador, o aplicativo deverá respeitar as políticas definidas pelo administrador sobre como ativar ou desativar o streaming para dispositivos próximos (por exemplo, usando as configurações do DevicePolicyManager no Android).
  • Deve garantir que o display remoto e todas as fontes de eventos de entrada remota pertençam ao mesmo dispositivo lógico (por exemplo, um display remoto e um teclado conectado) da perspectiva do usuário e que os eventos sejam roteados adequadamente.
  • O usuário deve poder encerrar o streaming do dispositivo local, por exemplo, usando um botão em uma notificação persistente. Esse comportamento é controlado pela tela de bloqueio, se o telefone tiver um bloqueio de tela definido.
  • Deve mostrar uma affordance no dispositivo de origem quando o streaming estiver acontecendo em outro dispositivo, como um ícone na barra de status ou uma notificação persistente.