Framework de resolución de políticas de dispositivos

A partir de Android 14, varios agentes de administración de políticas de dispositivos pueden establecer políticas usando DevicePolicyManager APIs.

Principios generales

En los casos en que más de un agente de administración de políticas de dispositivos aplica políticas a un usuario, sucede lo siguiente:

  • Los agentes de administración de políticas de dispositivos pueden consultar la política aplicada o resuelta para cualquier política que puedan establecer.
  • Cada política establecida genera una devolución de llamada (onPolicySetResult) que indica si la política se estableció correctamente o no por un motivo determinado (como un conflicto de políticas o una falla de hardware).
  • Si el estado resuelto de una política cambia más adelante, se recibe una devolución de llamada (onPolicyChanged) que indica si la política coincide con lo que estableció ese agente.
  • La mayoría de las políticas operan según el principio de que gana la más estricta. Esto significa que se aplica la política más estricta elegida por cualquier agente de administración de políticas de dispositivos.

Android 14 (nivel de API 34) y versiones posteriores

En Android 14 (nivel de API 34) y versiones posteriores, los dispositivos compatibles con Android deben implementar el mecanismo de resolución de políticas tal como se define en la siguiente tabla para resolver conflictos cuando más de un agente de administración de políticas de dispositivos establece una política. Los mecanismos de resolución a los que se hace referencia en la siguiente tabla (MostRecent, MostRestrictive, StringSetUnion y TopPriority) son nombres de clase de los mecanismos de resolución definidos en el Proyecto de código abierto de Android.

Las políticas identificadas por PolicyIdentifier instancias documentan su estrategia de resolución de forma individual en su documentación de referencia de la API.

API de DevicePolicyManager Mecanismo de resolución
MostRecent: Se aplica la política más reciente cuando la establecen varios administradores.
MostRestrictive: Establece la restricción del usuario si algún administrador la estableció.
StringSetUnion: Se resuelve como la unión de las políticas establecidas por uno o más administradores (para las políticas representadas como un conjunto de cadenas).
TopPriority: Se resuelve con el siguiente orden de prioridad de mayor a menor definido por el rol que tiene el agente de administración de políticas de dispositivos:
  1. El administrador de bloqueo del dispositivo
  2. El administrador de la empresa
  3. Cualquier otro administrador