Administrador de tareas de servicios en primer plano (FGS)

Android 13 (API de nivel 33) permite a los usuarios detener servicios en primer plano desde el panel lateral de notificaciones, independientemente de la versión del SDK de destino. Esta nueva opción, llamada Administrador de tareas de servicios en primer plano (FGS), muestra una lista de apps que actualmente ejecutan un servicio en primer plano. Esta lista tiene la etiqueta Apps activas. Junto a cada app, hay un botón Detener. En la Figura 1, se ilustra el flujo de trabajo del Administrador de tareas de FGS en un dispositivo que ejecuta Android 13:

En la parte inferior del panel lateral de notificaciones, hay un botón que indica la cantidad de apps que se están ejecutando en segundo plano. Cuando lo presionas, aparece un diálogo en el que se enumeran los nombres de las diferentes apps. El botón Detener se encuentra a la derecha de cada app.
Figura 1: Flujo de trabajo del Administrador de tareas de FGS en dispositivos Android 13

La acción del usuario detiene toda la app

Cuando el usuario presiona el botón Detener junto a tu app en el Administrador de tareas de FGS, se detiene toda la app, no solo el servicio en primer plano en ejecución.

Comparación del comportamiento con acciones de usuario "deslizar hacia arriba" y "forzar detención"

Consulta la siguiente tabla para ver cómo se compara el Administrador de tareas de FGS con las condiciones existentes: "deslizar el dedo hacia arriba" desde la pantalla Recientes y "Forzar la detención" de una app que funciona mal.

Administrador de tareas de FGS Deslizar el dedo hacia arriba Forzar detención
Quita de inmediato la app de la memoria
Se detiene la reproducción de contenido multimedia
Se detienen los FGS/se quita la notificación asociada
Se quita la pila de actividades de la actividad
Quita la app del historial
Se cancelan los trabajos programados
Se cancelan las alarmas

No se envían devoluciones de llamada cuando el usuario detiene la app desde el Administrador de tareas de FGS

El sistema no envía devoluciones de llamada a tu app cuando el usuario presiona el botón Detener. Cuando se inicie la copia de seguridad de tu app, te recomendamos que verifiques el motivo nuevo de REASON_USER_REQUESTED que forma parte de la API de ApplicationExitInfo existente.

Mensajes del sistema relacionados con servicios en primer plano de larga duración

Si el sistema detecta que tu app ejecuta un servicio en primer plano durante un período prolongado (al menos 20 horas dentro de un período de 24 horas), envía una notificación al usuario para invitarlo a interactuar con el Administrador de tareas de FGS.

Obtén más información sobre la nueva notificación del sistema que alerta a los usuarios sobre un servicio en primer plano de larga duración.

Exenciones

El sistema brinda varios niveles de exenciones para ciertos tipos de apps, que se describen en las siguientes secciones.

Las exenciones se aplican por app y no por proceso. Si el sistema exime un proceso en una app, todos los demás procesos de esa app también quedan eximidos.

Exenciones con respecto a aparecer en el Administrador de tareas de FGS

Las siguientes apps pueden ejecutar un servicio en primer plano y no aparecer en el Administrador de tareas:

Exenciones con respecto a la finalización por parte de los usuarios

Cuando los siguientes tipos de apps ejecutan un servicio en primer plano, aparecen en el Administrador de tareas de FGS, pero no hay un botón Detener junto al nombre de la app para que el usuario lo presione:

Pruebas

Para probar que tu app se comporte como debería mientras el usuario la detiene y luego de dicha acción, ejecuta el siguiente comando de ADB en una ventana de terminal:

adb shell cmd activity stop-app PACKAGE_NAME