Programación del dispositivo

El módulo de programación de dispositivos contiene una lógica que detecta si el dispositivo se encuentra en estado de inactividad o no, y si puede reiniciarse sin interrumpir al usuario.

Este módulo mejora la tasa de adopción de las actualizaciones de software, ya que proporciona una señal confiable de preparación para el reinicio a los instaladores. Una señal confiable de preparación para el reinicio permite que los instaladores reinicien el dispositivo para aplicar una actualización, con el conocimiento de que el usuario no se vio interrumpido por la actualización.

El reinicio automático de los dispositivos en un estado no utilizado permite actualizaciones más rápidas, en comparación con la espera de que el dispositivo se reinicie de forma orgánica. Al reducir el tiempo que tarda en aplicarse una actualización, los usuarios reciben correcciones críticas más rápido, lo que mejora el estado general de su dispositivo. Una tasa de adopción más rápida también permite encontrar regresiones antes.

Esta lógica se puede actualizar, ya que determinar la preparación para el reinicio de un dispositivo implica la consideración de varios criterios. Estos criterios pueden evolucionar con el tiempo, por lo que poder actualizar esta lógica garantiza que la señal de preparación para el reinicio siga siendo válida.

Límite del módulo

En Android 12, este módulo contiene código en el siguiente directorio nuevo:

  • packages/modules/Scheduling

Formato del paquete

El módulo de programación de dispositivos (com.android.scheduling) se envía como un paquete APEX.

El módulo contiene dos archivos JAR:

  • framework-scheduling.jar: Contiene la superficie de la API con la que interactúa un instalador. Esto forma parte de bootclasspath.

  • service-scheduling.jar: Contiene un nuevo servicio del sistema, RebootReadinessManagerService. El proceso del servidor del sistema lo carga.

Dependencias

Este módulo no tiene dependencias externas.