Android 13 introduce el concepto de rastreador de consumo de energía , que es un proceso que monitorea el uso de la batería en primer o segundo plano por parte de las aplicaciones para determinar si las aplicaciones violan alguna política. Android 13 contiene dos rastreadores de consumo de energía: el rastreador de servicios en primer plano y el rastreador de uso de batería en segundo plano. En lugar de utilizar sus propios mecanismos para determinar el abuso de la batería por parte de las aplicaciones, recomendamos utilizar estos rastreadores para monitorear y alertar a los usuarios sobre el uso excesivo de la batería.
Rastreador de servicios en primer plano
Los servicios en primer plano pueden ejecutarse y utilizar la batería durante un período de tiempo prolongado. El rastreador de servicios en primer plano muestra una notificación a los usuarios cuando un servicio en primer plano ha estado ejecutándose durante un período prolongado pero es invisible, como cuando un usuario ha descartado la notificación del servicio. Si el usuario hace clic en la notificación, se muestra el administrador de tareas y le permite detener el servicio en primer plano. Este rastreador está habilitado de forma predeterminada.
Rastreador de uso de batería en segundo plano
Las aplicaciones pueden agotar la batería en segundo plano sin que el usuario se dé cuenta. El rastreador de batería en segundo plano monitorea el uso de la batería para cada aplicación. El uso de la batería en este contexto se define mediante tres dimensiones: la aplicación en primer plano en la parte superior, el servicio en primer plano ejecutando algo que no es visible y la parte en segundo plano de la aplicación. Si la parte en segundo plano del uso de la batería de la aplicación cruza algún umbral, la aplicación se mueve a un grupo restringido que la limita a un trabajo por día. Este rastreador está deshabilitado de forma predeterminada. Para habilitar este rastreador, ejecute los siguientes comandos:
adb shell device_config put activity_manager bg_auto_restrict_abusive_apps 1
adb shell device_config put activity_manager bg_current_drain_auto_restrict_abusive_apps_enabled 1