En nuestro día a día, usamos aplicaciones como alarmas, recordatorios de tareas en nuestros teléfonos. Anteriormente, ejecutar tareas en segundo plano era una tarea muy difícil en Android, pero ahora, con la ayuda de Work Manager , podemos programar nuestras tareas fácilmente. Work Manager es una biblioteca de Android Jetpack. Permite que la aplicación haga cosas en segundo plano incluso cuando se sale de la aplicación o se reinicia el dispositivo. En este artículo, aprenderemos cómo integrar el administrador de trabajo en su aplicación de Android, lo que facilita nuestro trabajo en la programación de tareas y recordatorios.
Implementación paso a paso
Paso 1: Crear un nuevo Proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio. Tenga en cuenta que seleccione Kotlin como lenguaje de programación.
Paso 2: Agregue dependencias en sus archivos de calificaciones.
Navegue a Gradle Scripts > build.gradle(Module: app) y agregue los siguientes códigos.
implementation("androidx.work:work-runtime-ktx:2.7.0")
Paso 3: crea una clase de trabajador
Cree una clase y luego extienda Worker Class en esa clase y anule su método doWork() . Independientemente de las tareas que desee realizar en segundo plano, escríbalas en el método doWork(). Es responsable de ejecutar esa tarea.
Kotlin
import android.content.Context import android.util.Log import androidx.work.Worker import androidx.work.WorkerParameters class WorkerClass(appContext: Context, workerParams: WorkerParameters): Worker(appContext, workerParams) { override fun doWork(): Result { // Enter work details to perform on background // Log.d is used to for debugging purposes Log.d("WorkerClass","It's Working") // Task result return Result.success() } }
El resultado devuelto por doWork() informa al WorkManager si el trabajo se realizó correctamente y, en caso de falla, si se debe volver a intentar el trabajo o no. Estos son Result.success(), Result.failure(), Result.retry().
Paso 4: trabajar con el archivo MainActivity.kt
En nuestro archivo MainActivity, crearemos una solicitud de trabajo. Agregue el siguiente código a su archivo reemplazando los nombres de la clase y la Actividad.
Kotlin
package com.mrtechy.gfg_workmanager import WorkerClass import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.work.OneTimeWorkRequestBuilder import androidx.work.WorkManager import androidx.work.WorkRequest class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Created a Work Request val uploadWorkRequest: WorkRequest = OneTimeWorkRequestBuilder<WorkerClass>().build() // Submit the WorkRequest to the system WorkManager.getInstance(this).enqueue(uploadWorkRequest) } }
Salida: Hemos usado Log.d para mostrar la salida en la ventana logcat.
Salida Logcat:
Salida de la aplicación:
Publicación traducida automáticamente
Artículo escrito por iamabhijha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA