Roles de Android

Una función es un nombre único dentro del sistema asociado con ciertos permisos y privilegios. Las apps pueden solicitar conservar ciertas funciones mediante la API de Android, específicamente, a través de la invocación de métodos en la clase RoleManager.

Consulta la siguiente lista para conocer los roles disponibles y sus requisitos correspondientes.

Rol Requisitos
ASISTENTE Al menos uno de los siguientes elementos:
  • La app tiene una actividad que realiza acciones de asistencia, según la información sobre el contexto del usuario cuando solicitó la asistencia (por ejemplo, el nombre del paquete de la app actual en primer plano y su información contextual).
  • La app tiene un servicio de interacción por voz siempre activo, restringido por el permiso android.permission.BIND_VOICE_INTERACTION, que puede realizar el reconocimiento de voz y organizar sesiones de interacción de voz activas. Además, la app tiene una marca explícita que indica que el servicio puede controlar la acción de asistencia.
NAVEGADOR Todos los siguientes:
  • La app tiene una actividad que las apps pueden invocar mediante solicitudes de intents implícitas, que muestra una página web que corresponde a una dirección http://.
  • La app debe controlar la navegación entre vínculos. Es decir, si el usuario ve una página web y hace clic en una dirección http:// del texto, la app debe poder mostrar el contenido correspondiente al vínculo seleccionado sin intervención adicional del usuario.
  • La app debe poder proporcionar la información de ubicación geográfica actual del dispositivo a las páginas web cuando se solicita y el usuario la aprueba.
MARCADOR Todos los siguientes:
  • La app tiene una actividad que las apps pueden invocar mediante solicitudes de intents implícitas, que proporciona la interfaz de usuario en la llamada mientras el dispositivo está en una llamada.
  • La app puede controlar los intents de llamadas entrantes, mostrar al usuario la información relacionada con ella (por ejemplo, el número de teléfono del emisor) y permitirle responder o rechazar la llamada.
  • La app le proporciona al usuario un medio para iniciar llamadas y ver un historial de llamadas en su dispositivo.
SMS Todos los siguientes:
  • La app cumple con todos los requisitos para apps de SMS.
  • La app tiene una actividad que las apps pueden invocar a través de solicitudes de intents implícitas, que puede enviar un mensaje a un número de teléfono.
  • La app tiene un servicio, restringido por el permiso android.permission.SEND_RESPOND_VIA_MESSAGE, que se puede invocar con intents implícitos y que puede entregar mensajes recibidos desde la app de Teléfono cuando el usuario opta por responder por mensaje durante una llamada entrante. La app puede entregar mensajes a través de su propio sistema de mensajería.
  • La app tiene dos receptores de emisión, uno con el permiso android.permission.BROADCAST_SMS y otro con el permiso android.permission.BROADCAST_WAP_PUSH, que pueden escuchar los mensajes SMS y MMS basados en texto enviados al dispositivo, respectivamente. Luego, la app se encarga de escribir los mensajes en el proveedor de SMS y notificar a los usuarios.
EMERGENCIA Todos los siguientes:
  • La app es una app del sistema.
  • La app tiene una actividad que presenta información de emergencia del usuario. Cualquier persona puede navegar a esta pantalla con el botón de emergencia en la actividad del Marcador de emergencia.
CASA La app tiene una actividad que puede iniciar la pantalla principal cuando el usuario presiona el botón de inicio. La pantalla principal debe mostrar íconos y widgets de las apps, y admitir la navegación basada en botones o gestos (por ejemplo, deslizar hacia arriba para ver todas las apps).
LLAMA_REdirección La app tiene un servicio, restringido por el permiso android.permission.BIND_CALL_REDIRECTION_SERVICE, al que se puede vincular el framework de telecomunicaciones. El servicio recibe el número de teléfono saliente del marco de trabajo de telecomunicaciones y realiza una de las siguientes acciones:
  • Permite que la llamada se realice sin modificaciones.
  • Cambia el número saliente para enrutar a través de un número de proxy.
  • Cancela la llamada.
FILTRO DE LLAMADAS La app tiene un servicio, restringido por el permiso android.permission.BIND_SCREENING_SERVICE, que realiza dos funciones:
  1. Bloqueo o filtro de llamadas: El servicio puede elegir qué llamadas se deben enviar a la app de Teléfono del teléfono (y posiblemente sonar, según el No interrumpir o el volumen) y cuáles se deben enviar al buzón de voz en silencio.
  2. Identificación de llamadas: El servicio puede identificar y mostrar información sobre una llamada a través de una interfaz de usuario.
GALERÍA_DE_SISTEMA Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app proporciona una IU para que los usuarios almacenen, organicen y muestren sus imágenes y videos.
SYSTEM_AUTOMOTIVE_CLUSTER Todos los siguientes:
  • La app es una app del sistema en Automotive.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app proporciona funciones para una pantalla de clúster de Automotive (por lo general, adyacente al volante) para que los usuarios puedan contestar llamadas telefónicas y acceder a listas de contactos y registros de llamadas.
REPRODUCCIÓN_DISPOSITIVO_COMPANION La app puede realizar solicitudes para asociarse con un dispositivo de reloj y administrarlo (mediante la API que proporciona la clase CompanionDeviceManager). Una vez que el reloj y la app estén conectados a través de la IU que proporciona la app, los usuarios pueden administrar sus relojes desde la app, lo que incluye sincronizar contactos y calendario, y administrar notificaciones y llamadas telefónicas.
SYSTEM_AUTOMOTIVE_PROJECTION Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app permite que la pantalla del teléfono se proyecta en la pantalla del vehículo. Permite a los conductores acceder y controlar apps en teléfonos Android, incluidas las de música, navegación, llamadas telefónicas y Búsqueda de Google, mediante mecanismos de entrada en el vehículo, como los controles táctiles, del volante y los comandos por voz.
SYSTEM_SHELL Todos los siguientes:
  • La app es una app del sistema a la que se le asigna el UID Process.SHELL_UID.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app proporciona una interfaz que funciona en el nivel de la línea de comandos para que los usuarios puedan interactuar con el SO Android. Por ejemplo, mostrar el contenido de una carpeta o iniciar apps. Las apps (si se otorgaron los permisos necesarios) o la herramienta de ADB pueden ejecutar comandos de shell de manera programática.
SYSTEM_CONTACTOS Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app proporciona una IU para que los usuarios administren sus contactos (por ejemplo, ver, compartir, agregar, quitar o buscar un contacto). La app actualiza el proveedor de Contactos cuando el usuario actualiza sus contactos desde la app. También pueden llamar o enviar mensajes de texto a sus contactos desde la app.
RECONOCIMIENTO_DE_SISTEMA_SPEECH Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La aplicación proporciona un servicio que puede realizar el reconocimiento de voz.
  • Cuando la app recibe transmisiones de micrófono en vivo de otra app para el reconocimiento de voz, atribuye correctamente el uso del micrófono a la app que realiza la llamada y actualiza las estadísticas de operación de la app según corresponda.
SYSTEM_WIFI_COEX_MANAGER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app tiene un servicio que establece de forma dinámica una lista de canales Wi-Fi que el dispositivo debe evitar usar debido a la interferencia móvil.
BIENESTAR_DEL_SISTEMA Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app debe proporcionar funciones para que los usuarios reduzcan las distracciones y les brinden estadísticas sobre cómo utilizan su dispositivo (por ejemplo, el tiempo de uso por semana).
SYSTEM_TELEVISION_NOTIFICATION_HANDLER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app debe mostrar notificaciones de atención a los usuarios que usan TVs. La app también debe mostrar las notificaciones activas actuales cuando se envía el intent android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL (desde SystemUI).
SYSTEM_COMPANION_DEVICE_PROVIDER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app debe poder detectar dispositivos periféricos cercanos. Debe tener una IU en la que el usuario pueda confirmar que un dispositivo periférico determinado debe estar asociado y administrado por una app. Una vez que el usuario lo confirma, la app de administración le otorga permiso a la app asociada para acceder al dispositivo periférico (por ejemplo, su nombre, dirección, clase y estado de vinculación) y puede iniciar el proceso de vinculación.
SYSTEM_DOCUMENT_MANAGER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app tiene una actividad que permite a los usuarios acceder a documentos existentes y crear documentos nuevos en el dispositivo.
  • La app debe cumplir con todos los requisitos que se describen en la sección 2.2.3 del CDD de Android. Software bajo el encabezado [3.2.3.1/H-0-1].
RECONOCIMIENTO_DE_ACTIVIDAD_del_SISTEMA Todos los siguientes:
  • La app es una app del sistema.
  • La app tiene un servicio, restringido por android.permission.ACTIVITY_RECOGNITION, que puede realizar el reconocimiento de actividades (por ejemplo, correr o andar en bicicleta).
IU_SISTEMA Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app tiene una interfaz para que los usuarios interactúen con sus teléfonos. Por ejemplo, la pantalla principal del teléfono, la navegación, las apps recientes, la configuración rápida, la barra de notificaciones, la pantalla de bloqueo o el control de volumen.
SYSTEM_TELEVISION_REMOTE_SERVICE Todos los siguientes:
  • La app es una app del sistema en Android TV.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app tiene un servicio que puede comunicarse con el dispositivo HID de control remoto de la TV (por ejemplo, a través de BLE), inyectar eventos (por ejemplo, clics en botones) y enviar otros datos (por ejemplo, transmisión de audio desde un micrófono integrado en el control remoto) a la plataforma.
INTELLIGENCE DE_IU_SISTEMA Todos los siguientes:
  • Ser un servicio preinstalado que proporciona, a través de las APIs del framework (APIs públicas o del sistema), un procesador inteligente integrado en el dispositivo para las funciones de la IU del sistema (por ejemplo, predecir y mostrar las próximas apps para los usuarios).
  • El servicio debe cumplir con todos los requisitos que se describen en la sección 9.8.6 Captura de contenido del CDD de Android.
  • No puede tener el permiso android.permission.INTERNET. En su lugar, debe acceder a Internet a través de APIs bien definidas en un proyecto de código abierto.
  • No se puede vincular a apps, excepto para las siguientes apps del sistema: Bluetooth, Contactos, Multimedia, Telefonía, IU del sistema y componentes que proporcionan APIs de Internet. Cada vinculación permitida se debe establecer de forma explícita mediante la configuración <allow-association> en la configuración del sistema.
  • No puede compartir datos con apps, a menos que haya una acción directa del usuario (por ejemplo, cuando el usuario presiona explícitamente un botón cada vez que se comparten los datos).
SYSTEM_AMBIENT_AUDIO_INTELLIGENCE Todos los siguientes:
  • Es idéntico a las condiciones de SYSTEM_UI_INTELLIGENCE, excepto que el servicio preinstalado proporciona un procesador inteligente en el dispositivo para el audio ambiental (por ejemplo, reconocer canciones que se reproducen cerca del dispositivo).
INTELLIGENCE DEL SISTEMA_AUDIO Todos los siguientes:
  • Es idéntico a las condiciones de SYSTEM_UI_INTELLIGENCE, excepto que el servicio preinstalado proporciona un procesador inteligente integrado en el dispositivo para el audio (por ejemplo, subtítulos de videos, podcasts, llamadas telefónicas, videollamadas y mensajes de audio).
INTELLIGENCE DE NOTIFICACIÓN DEL SISTEMA Todos los siguientes:
  • Es idéntico a las condiciones de SYSTEM_UI_INTELLIGENCE, excepto que el servicio preinstalado proporciona un procesador inteligente integrado en el dispositivo para las notificaciones (por ejemplo, sugerencias y respuestas para notificaciones de mensajes).
INTELLIGENCE DE TEXTO_ DEL SISTEMA Todos los siguientes:
  • Es idéntico a las condiciones de SYSTEM_UI_INTELLIGENCE, excepto que el servicio preinstalado proporciona un procesador de texto inteligente integrado en el dispositivo (por ejemplo, traducción instantánea o autocompletado).
INTELLIGENCIA VISUAL DEL SISTEMA Todos los siguientes:
  • Idéntico a las condiciones de SYSTEM_UI_INTELLIGENCE, excepto que el servicio preinstalado proporciona un procesador inteligente en el dispositivo para funciones visuales que implica el análisis de datos de la cámara. Por ejemplo, mantener activa la pantalla del teléfono mientras el usuario la mira o determinar la orientación ideal de la pantalla según la orientación facial del usuario desde la cámara frontal del dispositivo.
COMPANION_DEVICE_APP_STREAMING Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app puede crear y administrar canales de comunicación con dispositivos conectados para que puedan intercambiar datos. La app y los dispositivos conectados deben autenticarse entre sí de forma correcta (por ejemplo, demostrando su conocimiento de las claves compartidas) para establecer estos canales de comunicación. Los canales de comunicación deben tener protección de encriptación.
  • La app puede enviar notificaciones desde el dispositivo local al dispositivo conectado para permitir que el usuario realice acciones en las notificaciones en ese dispositivo.
  • Debes poder transmitir los metadatos necesarios para la transmisión de apps al dispositivo conectado, como la lista de apps disponibles en el dispositivo local.
  • Poder transmitir apps desde el dispositivo local al dispositivo conectado después de que el usuario haya indicado su preferencia para hacerlo con consentimiento explícito (ya sea en el teléfono o en el dispositivo conectado).
  • Ser capaz de volver a reproducir (insertar) eventos que ocurran en una app transmitida en un dispositivo conectado, en el dispositivo local Por ejemplo, volver a reproducir un evento táctil en la tablet en las mismas coordenadas del teléfono.
  • La app puede reemplazar la transmisión del micrófono del dispositivo local con la transmisión del micrófono de un dispositivo conectado mientras una app transmitida usa el micrófono.
  • La app captura audio del dispositivo y lo transmite al dispositivo conectado.
  • Debe bloquear la transmisión de la cámara del dispositivo local mientras una app que se transmite usa la cámara.
  • Se debe verificar la integridad de la compilación del SO del dispositivo conectado (por ejemplo, mediante la certificación del dispositivo como en VerifiedBootState).
  • Solo transmite apps en las que solo haya una cuenta que coincida en el registro de cuentas en el dispositivo (por ejemplo, AccountManager en Android) en ambos dispositivos. Si este no es el caso, la transmisión debe autorizarse con un código único que se muestra en el dispositivo de origen y, luego, ingresarse en el dispositivo conectado. Ten en cuenta que, en el caso de dispositivos compatibles con multiusuario (y no varias cuentas) con el mismo aislamiento de datos confiable, como en Multiusuario en Android, un usuario se cuenta como un dispositivo.
  • Debe detener la transmisión y desconectarse de un dispositivo conectado de inmediato si vence o se revoca la autenticación de la cuenta en el dispositivo conectado.
  • Se debe verificar que un dispositivo conectado esté dentro del alcance del Bluetooth del dispositivo local antes y durante la transmisión.
  • Se deben desconectar las sesiones de transmisión de apps en curso si el usuario no interactúa con el dispositivo conectado (por ejemplo, el teclado, la pantalla táctil y el mouse están inactivos) durante 5 minutos. Las apps de transmisión de video por Internet están exentas de este requisito.
  • Si el dispositivo de origen usa el Factor de conocimiento de la pantalla de bloqueo (LSKF), cuando la pantalla está bloqueada, la app no debe transmitir apps a un dispositivo conectado, a menos que ese dispositivo tenga una pantalla de bloqueo y esté desbloqueado.
  • Si un administrador gestiona el dispositivo, la app debe respetar las políticas establecidas por el administrador sobre la habilitación o inhabilitación de la transmisión de apps a dispositivos cercanos (por ejemplo, mediante la configuración de DevicePolicyManager en Android).
  • Se debe garantizar que la pantalla remota y todas las fuentes de eventos de entrada remota pertenezcan al mismo dispositivo lógico (por ejemplo, una pantalla remota y un teclado conectado) desde la perspectiva del usuario, y que los eventos se enruten según corresponda.
  • El usuario debe poder finalizar la transmisión desde el dispositivo local, por ejemplo, con un botón en una notificación persistente. Si el teléfono tiene configurado un bloqueo de pantalla, la pantalla de bloqueo restringe este comportamiento.
  • Debe mostrar una opción en el dispositivo de origen cuando la transmisión se realiza en otro dispositivo, como un ícono en la barra de estado o una notificación persistente.
ADMINISTRACIÓN_POLÍTICA_DE_DISPOSITIVOS Todos los siguientes:
  • Solo los OEMs pueden otorgar esta función a la app. Las apps no pueden solicitar esta función, ya que está diseñada para otorgarse de inmediato al nombre de paquete que define el OEM cuando se envía el dispositivo.
  • La app debe poder aprovisionar un perfil administrado (propietario del perfil) o un dispositivo administrado (propietario del dispositivo), lo que incluye descargar e instalar el cliente de Device Policy adecuado para que sea el propietario del dispositivo o del perfil, si es necesario.
  • De manera opcional, la app puede actualizar recursos de forma dinámica, como cadenas y elementos de diseño usados para administrar políticas del dispositivo.
  • La app puede ser una app del sistema preinstalada o puede descargarse e instalarse antes del aprovisionamiento.
  • En los casos de aprovisionamiento de propietarios de perfiles, cuando la app del titular de la función se instala en un usuario de Android determinado, debe instalarse en todos los perfiles aplicables de ese usuario.
SYSTEM_APP_PROTECTION_SERVICE Todos los siguientes:
  • La app es una app del sistema.
  • El único propósito de la app es detectar aplicaciones potencialmente dañinas (aplicaciones que podrían poner en riesgo a los usuarios, sus datos o dispositivos, como troyanos, suplantación de identidad [phishing] y apps de software espía) o Software No Deseado para Dispositivos Móviles.
  • La app debe cumplir con todos los requisitos que se describen en la sección 9.8.6 del CDD de Android. Datos ambientales y a nivel del SO.
  • No debe declarar el permiso normal android.permission.INTERNET. En su lugar, debe acceder a Internet a través de APIs bien definidas en un proyecto de código abierto.
  • No debe vincularse a apps, excepto para las siguientes apps del sistema: El Controlador de Permisos y los componentes que proporcionan APIs de Internet y Telefonía. Cada vinculación permitida se debe establecer de forma explícita a través de la configuración <allow-association> en la configuración del sistema.
  • No debe compartir datos con apps, a menos que haya una acción directa del usuario (por ejemplo, cuando el usuario presiona explícitamente un botón cada vez que se comparten los datos).
SYSTEM_AUTOMOTIVE_CALENDAR_SYNC_MANAGER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • Debe transferir los datos del calendario desde el teléfono iOS o Android del usuario al dispositivo Android Auto. El dispositivo Android Auto debe almacenar estos datos de calendario en el proveedor de calendario.
  • La app debe proporcionar un componente de IU en el teléfono que el usuario pueda usar para activar la sincronización del calendario y seleccionar los calendarios que se van a sincronizar. La app debe proporcionar un componente de IU en el teléfono que el usuario pueda usar para desactivar la sincronización del calendario.
  • Debe funcionar sin conexión a Internet. Por ejemplo, mediante conexiones directas con cable o inalámbricas.
NAVEGACIÓN_AUTOMOTRIZ Todos los siguientes:
  • La app tiene una actividad que las apps pueden invocar mediante solicitudes de intent implícitas, que muestra la ubicación actual y el entorno actual del usuario.
  • La app tiene una actividad que las apps pueden invocar a través de solicitudes de intents implícitas, que permite al usuario navegar a una ubicación geográfica específica.
  • Tiene una actividad que se inicia en el clúster de instrumentos cuando la app tiene el enfoque de navegación. La actividad debe mostrar la ubicación actual del usuario y el entorno, y permitirle navegar a una ubicación geográfica específica.
COMPANION_DEVICE_COMPUTER Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • Permite que los usuarios dupliquen las notificaciones y accedan a las fotos y el contenido multimedia desde el teléfono en una computadora conectada.
INTELLIGENCE DEL SISTEMA DE CONFIGURACIÓN Al menos uno de los siguientes elementos:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • Tiene un servicio que proporciona funciones de inteligencia para la app de Configuración, como sugerencias y búsqueda.
NOTAS Todos los siguientes:
COMPANION_DEVICE_GLASSES La app puede realizar solicitudes para asociarse con un dispositivo de anteojos y administrarlo (a través de la API proporcionada por la clase CompanionDeviceManager). Una vez que el dispositivo lente y la app se conectan mediante la IU que proporciona CDM, los usuarios pueden administrar sus lentes con acceso a contactos y permiso para administrar notificaciones y llamadas telefónicas.
TRANSMISIÓN_DE_DISPOSITIVO_CERCANO DE COMPANION Todos los siguientes:
  • La app es una app del sistema.
  • Solo los OEMs pueden otorgar este rol a la app.
  • La app puede crear y administrar canales de comunicación con dispositivos conectados para que estos puedan intercambiar datos. La app y los dispositivos conectados deben autenticarse entre sí de forma correcta (por ejemplo, demostrando su conocimiento de las claves compartidas) para establecer estos canales de comunicación. Los canales de comunicación deben tener protección de encriptación.
  • La app puede enviar notificaciones desde el dispositivo local al dispositivo conectado para permitir que el usuario realice acciones en las notificaciones en ese dispositivo.
  • Debes poder transmitir los metadatos necesarios para la transmisión de apps al dispositivo conectado, como la lista de apps disponibles en el dispositivo local.
  • Poder transmitir apps desde el dispositivo local al dispositivo conectado después de que el usuario haya indicado su preferencia para hacerlo con consentimiento explícito (ya sea en el teléfono o en el dispositivo conectado).
  • Ser capaz de volver a reproducir (insertar) eventos que ocurran en una app transmitida en un dispositivo conectado, en el dispositivo local Por ejemplo, volver a reproducir un evento táctil en la tablet en las mismas coordenadas que en el teléfono o reproducir un evento de entrada que ocurrió en el dispositivo de los lentes con la misma semántica de entrada que en el teléfono.
  • La app puede reemplazar la transmisión del micrófono del dispositivo local con la transmisión del micrófono de un dispositivo conectado mientras una app transmitida usa el micrófono.
  • La app captura audio del dispositivo y lo transmite al dispositivo conectado.
  • Se debe verificar la integridad de la compilación del SO del dispositivo conectado (por ejemplo, mediante la certificación del dispositivo como en VerifiedBootState).
  • Solo transmite apps en las que solo haya una cuenta que coincida en el registro de cuentas en el dispositivo (por ejemplo, AccountManager en Android) en ambos dispositivos. Si este no es el caso, la transmisión debe autorizarse con un código único que se muestra en el dispositivo de origen y, luego, ingresarse en el dispositivo conectado. Ten en cuenta que, en el caso de dispositivos compatibles con multiusuario (y no varias cuentas) con el mismo aislamiento de datos garantizado, como en Multiusuario en Android, un usuario se cuenta como un dispositivo.
  • Debe detener la transmisión y desconectarse de un dispositivo conectado de inmediato si vence o se revoca la autenticación de la cuenta en el dispositivo conectado.
  • Si el dispositivo de origen usa el Factor de conocimiento de la pantalla de bloqueo (LSKF), cuando la pantalla está bloqueada, la app no debe transmitir apps a un dispositivo conectado, a menos que ese dispositivo tenga una pantalla de bloqueo y esté desbloqueado.
  • Si un administrador gestiona el dispositivo, la app debe respetar las políticas establecidas por el administrador sobre la habilitación o inhabilitación de la transmisión a dispositivos cercanos (por ejemplo, mediante la configuración de DevicePolicyManager en Android).
  • Se debe garantizar que la pantalla remota y todas las fuentes de eventos de entrada remota pertenezcan al mismo dispositivo lógico (por ejemplo, una pantalla remota y un teclado conectado) desde la perspectiva del usuario, y que los eventos se enruten según corresponda.
  • El usuario debe poder finalizar la transmisión desde el dispositivo local, por ejemplo, con un botón en una notificación persistente. Si el teléfono tiene configurado un bloqueo de pantalla, la pantalla de bloqueo restringe este comportamiento.
  • Debe mostrar una opción en el dispositivo de origen cuando la transmisión se realiza en otro dispositivo, como un ícono en la barra de estado o una notificación persistente.