Sobes.tech
Junior — Middle

Көңіл бөлүнчү процесстен негизги аткаруу агымына маалыматтарды өткөрүүнү кантип уюштурууга болот?

sobes.tech AI

AIден жооп

Androidде, фондук агымдан негизги (UI) агымга маалымат өткөрүү үчүн адатта бир нече ыкмалар колдонулат:

  • Handler: негизги агымда түзүлүп, фондук агымдан билдирүүлөр же Runnable алат.
  • runOnUiThread: Activityнин методу, ал UI агымында кодду ишке ашырууга мүмкүндүк берет.
  • LiveData: көзөмөлдөчү объект, анын жаңыртуулары автоматтык түрдө UIге жеткирилет.
  • ViewModel + Dispatchers.Main менен Coroutine: корутиндер агымдар арасында которулушту камсыздайт.

Handler менен мисал:

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

new Thread(() -> {
    // Фон иши
    String result = "Фон агымынан маалыматтар";

    mainHandler.post(() -> {
        // UI жаңыртуу
        textView.setText(result);
    });
}).start();