Realizar trabajo en segundo plano es una parte fundamental de la creación de apps para Android modernas que sean eficaces, eficientes y funcionen de manera adecuada en el dispositivo del usuario. El trabajo en segundo plano abarca cualquier tarea que tu app necesite realizar cuando no esté visible en primer plano, como recuperar datos de un servidor o procesar imágenes.

Navegar por las complejidades de la ejecución en segundo plano es clave para crear aplicaciones resilientes que funcionen bien en todos los dispositivos.

Comienza a usar el trabajo en segundo plano

Consulta la guía para elegir la API de trabajo en segundo plano adecuada para tu caso de uso y tenla en cuenta en el contexto del ciclo de vida de la app y el proceso de Android.
Guía
Elegir la API de trabajo en segundo plano adecuada puede ser complejo. En esta página, se te brinda orientación clara sobre cuándo usar el trabajo asíncrono, WorkManager, los servicios en primer plano o una opción alternativa. Descubre qué API es la mejor para tu caso de uso específico.
Guía
Explora los conceptos fundamentales del ciclo de vida del proceso de Android y cómo afecta el comportamiento y la administración de recursos de tu app. Obtén información sobre cómo el sistema administra los procesos de la app según el estado de actividad, lo que te permite diseñar aplicaciones eficientes y resilientes que responden correctamente a las finalizaciones iniciadas por el sistema.

Conceptos clave

Algunas de las APIs y herramientas más comunes para realizar trabajo en segundo plano incluyen WorkManager, servicios en primer plano, alarmas y transmisiones. Cada solución tendrá diferentes implicaciones para la duración de la batería de los dispositivos de los usuarios.
WorkManager es la solución recomendada para el trabajo persistente en segundo plano en Android. Aprende a usar esta potente biblioteca para programar tareas que persisten en los reinicios de la app y del dispositivo, y comprende sus funciones clave para controlar restricciones y políticas de reintentos flexibles.
Los servicios en primer plano ofrecen una forma eficaz de ejecutar tareas de inmediato que no deben interrumpirse. Descubre cuándo y cómo declarar, iniciar y detener un servicio en primer plano con una notificación persistente, lo que garantiza que tu app realice tareas críticas sin que el sistema la cierre.
Las alarmas son una herramienta fundamental para programar el trabajo basado en el tiempo. En esta página, se explica cómo usar AlarmManager para programar alarmas exactas e inexactas para tareas que deben ejecutarse en un momento específico o dentro de un período determinado, incluso cuando tu app no se está ejecutando. También se incluyen las prácticas recomendadas para administrar las alarmas y garantizar que estén optimizadas para la duración de la batería.
Aprende a enviar y recibir transmisiones para controlar eventos del sistema y mensajes de otras apps. También aprenderás sobre los receptores registrados en el contexto y los declarados en el manifiesto, y las restricciones modernas del sistema que se aplican a ellos.

Orientación de segundo plano por caso de uso

La solución adecuada varía según tu caso de uso. Android proporciona muchas APIs específicas para tareas, que se optimizan para situaciones particulares y, a menudo, generan un mayor ahorro de energía y menos restricciones que cuando se usan WorkManager y los servicios en primer plano.

En esta sección, se enumeran algunos de los casos de uso más comunes y la solución recomendada.

La mayoría de los casos de uso solo requieren la ubicación cuando el usuario interactúa con la app. Sin embargo, si tu app necesita acceder a la ubicación en segundo plano, usa la API del Fused Location Provider. Aprovecha esta API para obtener la última ubicación conocida almacenada en caché o solicitar actualizaciones periódicas de la ubicación.
Actualiza los GlanceAppWidgets de manera eficiente cuando la app se ejecuta en segundo plano con el método de actualización.
Usar Bluetooth de bajo consumo (BLE) para comunicarse con dispositivos periféricos en segundo plano Aprende a analizar, conectar y mantener una conexión persistente con dispositivos, respetando las restricciones a nivel del sistema y conservando la batería.
Para hacer un seguimiento de los pasos en dispositivos móviles, considera leer los pasos desde Health Connect, el almacén de datos de Android para datos de salud y actividad física.
Para las tareas en segundo plano iniciadas por el usuario que implican la transferencia de datos (incluidas las descargas y las cargas) y que tienen como objetivo mantener al usuario informado sobre el progreso, usa el tipo de tarea de transferencia de datos iniciada por el usuario. Este tipo de trabajo está optimizado para transferencias de datos de larga duración y el sistema le otorga prioridad.
Usa la biblioteca de Media3 para admitir la reproducción en segundo plano mientras tu app no está visible para el usuario.

Información sobre las optimizaciones de energía

Tener en cuenta los efectos del trabajo en segundo plano en el consumo de energía es fundamental para crear apps para Android de alta calidad. Te permite compilar apps más resistentes y eficientes en cuanto a la batería, ya que comprendes cómo el sistema administra los recursos. La optimización para el consumo de energía reduce el consumo de batería, evita que el sistema cierre tu app y ofrece una experiencia del usuario más fluida.
Guía

El sistema prioriza las solicitudes de recursos de las apps según el estado del dispositivo, el estado de la app y el intervalo de App Standby de la app.

Obtén más información sobre cómo tu app puede funcionar dentro de los límites de recursos de administración de energía del dispositivo para ejecutar el trabajo de forma confiable en segundo plano.

Guía
Es posible que tu app necesite evitar que la CPU del dispositivo entre en estado suspendido para completar tareas críticas. Esta guía te ayuda a seleccionar los métodos más adecuados para mantener un dispositivo activo.
Guía
Aprende a adaptar tu app a los modos Descanso y App Standby para mejorar la eficiencia de la batería y optimizar la experiencia del usuario. Si comprendes estos modos de ahorro de energía, puedes garantizar que tu app se ejecute de forma óptima y, al mismo tiempo, minimizar su impacto en la duración de batería del dispositivo.
Guía
A partir de Android 9, los dispositivos tienen funciones de administración de energía que afectan a todas las apps. Aprende a probar tu app para asegurarte de que se ejecute correctamente en todos los dispositivos, incluidas las funciones como el ahorro de batería, los buckets de App Standby y las restricciones en segundo plano.

Últimas noticias