Cambios en los servicios en primer plano

En la documentación de los servicios en primer plano, se describe el comportamiento actual de los servicios en primer plano de Android. La documentación brinda orientación sobre las prácticas recomendadas para la mayoría de las apps, independientemente de si se orientan a la versión más reciente de Android.

En esta página, se describen algunos de los cambios importantes más recientes en los servicios en primer plano y las implicaciones para las apps que no se orientan a la versión más reciente de la plataforma de Android. En muchos casos, las prácticas recomendadas que eran opcionales para las apps orientadas a niveles de API más bajos se vuelven obligatorias para las apps orientadas a niveles de API más altos.

Android 16 (nivel de API 36)

Los siguientes cambios se aplican a las apps que se ejecutan en Android 16 o versiones posteriores, sin importar el nivel de API al que se orienten:

  • Los trabajos en segundo plano que se inician desde un servicio en primer plano ahora deben cumplir con sus respectivas cuotas de tiempo de ejecución. Esto incluye las tareas programadas directamente con JobScheduler, así como las tareas creadas por otras bibliotecas, como WorkManager o DownloadManager.

    Para transferir datos en respuesta a una acción del usuario, considera usar una tarea de transferencia de datos que inicia el usuario. Estos trabajos están exentos de las cuotas de trabajo ordinarias.

Android 15 (nivel de API 35)

Los siguientes requisitos se aplican a las apps orientadas al nivel de API 35 o versiones posteriores:

Android 14 (nivel de API 34)

Los siguientes requisitos se aplican a las apps que se orientan al nivel de API 34 o superior:

Android 12 (nivel de API 31)

Los siguientes requisitos se aplican a las apps que se orientan al nivel de API 31 o versiones posteriores:

Android 11 (nivel de API 30)

Los siguientes requisitos se aplican a las apps orientadas al nivel de API 30 o versiones posteriores:

Android 10 (nivel de API 29)

Los siguientes requisitos se aplican a las apps orientadas al nivel de API 29 o versiones posteriores:

  • Si los servicios en primer plano de una app usan información de ubicación, la app debe declarar el servicio con el tipo de servicio location.

Android 9 (nivel de API 28)

Android 9 presenta el permiso FOREGROUND_SERVICE. Las apps que se ejecutan en Android 9 y usan servicios en primer plano deben tener ese permiso.

Si una app orientada al nivel de API 28 o versiones posteriores intenta crear un servicio en primer plano sin solicitar el permiso FOREGROUND_SERVICE, el sistema arroja una SecurityException.