Sobes.tech
Junior — Middle

Que métodos você usa para executar tarefas em segundo plano?

sobes.tech IA

Resposta da IA

No Android, várias métodos principais são utilizados para executar tarefas em segundo plano:

  • AsyncTask (obsoleto, não recomendado para novos projetos) — para tarefas simples e curtas.
  • HandlerThread e Handler — para organizar uma thread de fundo com uma fila de mensagens.
  • ExecutorService — para gerenciar um pool de threads.
  • WorkManager — método moderno e recomendado para tarefas adiadas e garantidas, que devem ser executadas mesmo após reiniciar o dispositivo.
  • IntentService (obsoleto, substituído pelo WorkManager) — para executar tarefas em um serviço de fundo.

Exemplo de uso do WorkManager para uma tarefa de fundo:

class UploadWorker(appContext: Context, workerParams: WorkerParameters) : Worker(appContext, workerParams) {
    override fun doWork(): Result {
        // Executar tarefa de fundo
        uploadData()
        return Result.success()
    }
}

// Iniciar a tarefa
val uploadWorkRequest = OneTimeWorkRequestBuilder<UploadWorker>().build()
WorkManager.getInstance(context).enqueue(uploadWorkRequest)