Sobes.tech
Junior — Middle

Arka plandaki bir süreçten ana yürütme akışına veri iletimini nasıl organize edebilirsiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Android'de, arka plandaki bir akıştan ana (UI) akışına veri iletmek için genellikle birkaç yaklaşım kullanılır:

  • Handler: ana akışta oluşturulur ve arka plandan mesajlar veya Runnable alır.
  • runOnUiThread: Activity'nin metodu olup, kodu UI akışında çalıştırmaya olanak tanır.
  • LiveData: gözlemlenebilir varlık, güncellemeleri otomatik olarak UI'ye iletilir.
  • ViewModel + Dispatchers.Main ile Coroutine: korutinler, akışlar arasında geçiş yapmayı sağlar.

Handler ile örnek:

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

new Thread(() -> {
    // Arka plan işi
    String result = "Arka plandan gelen veriler";

    mainHandler.post(() -> {
        // UI güncellemesi
        textView.setText(result);
    });
}).start();