Junior — Middle
Kā organizēt datu pārraidi no fonu procesa uz galveno izpildes pavedienu?
sobes.tech AI
Atbilde no AI
Android, lai pārsūtītu datus no fonā esoša pavediena uz galveno (UI) pavedienu, parasti izmanto vairākus pieejas veidus:
- Handler: tiek izveidots galvenajā pavedienā un saņem ziņojumus vai Runnable no fonā esošā pavediena.
- runOnUiThread: Activity metode, kas ļauj izpildīt kodu UI pavedienā.
- LiveData: novērojama būtība, kura automātiski piegādā atjauninājumus uz UI.
- ViewModel + Coroutine ar Dispatchers.Main: korutīnas ļauj pārslēgties starp pavedieniem.
Piemērs ar Handler:
Handler mainHandler = new Handler(Looper.getMainLooper());
jauns pavedienis(() -> {
// Fonā darbs
String result = "Dati no fonā esoša pavediena";
mainHandler.post(() -> {
// UI atjaunināšana
textView.setText(result);
});
});