Sobes.tech
Junior — Middle

¿Cómo se puede organizar la transmisión de datos desde un proceso en segundo plano al hilo principal de ejecución?

sobes.tech AI

Respuesta de la IA

En Android, para transferir datos desde un hilo en segundo plano al hilo principal (UI), generalmente se utilizan varios enfoques:

  • Handler: se crea en el hilo principal y recibe mensajes o Runnable desde el hilo en segundo plano.
  • runOnUiThread: método de la Activity que permite ejecutar código en el hilo UI.
  • LiveData: entidad observable, cuyas actualizaciones se entregan automáticamente en la UI.
  • ViewModel + Coroutine con Dispatchers.Main: las corrutinas permiten cambiar entre hilos.

Ejemplo con Handler:

Handler mainHandler = new Handler(Looper.getMainLooper());

new Thread(() -> {
    // Trabajo en segundo plano
    String result = "Datos del hilo en segundo plano";

    mainHandler.post(() -> {
        // Actualización de la UI
        textView.setText(result);
    });
}).start();