Junior — Middle
77
Каким образом реализовать выполнение асинхронных задач в Android без привлечения сторонних библиотек?
Ответ от нейросети
sobes.tech AI
В Android без сторонних библиотек для выполнения асинхронных задач можно использовать несколько подходов:
- AsyncTask (устаревший, но часто встречающийся в старом коде):
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... voids) {
// Долгая операция
return "Результат";
}
@Override
protected void onPostExecute(String result) {
// Обновление UI
textView.setText(result);
}
}.execute();
- Handler и Thread:
Handler handler = new Handler(Looper.getMainLooper());
new Thread(() -> {
// Долгая операция
String result = "Результат";
handler.post(() -> {
// Обновление UI
textView.setText(result);
});
}).start();
- ExecutorService из java.util.concurrent:
ExecutorService executor = Executors.newSingleThreadExecutor();
Handler handler = new Handler(Looper.getMainLooper());
executor.execute(() -> {
String result = "Результат";
handler.post(() -> {
textView.setText(result);
});
});
Эти способы позволяют выполнять задачи в фоновом потоке и обновлять UI в главном потоке без сторонних библиотек.