Всякий раз, когда вы используете какую-либо библиотеку GUI, возникает такая концепция: у вас есть один поток, предназначенный для событий GUI, в Java-Swing, называемый «Поток диспетчеризации событий» EDT , как в Android, так и в Android. SWT, это называется UI-Thread. Этот поток отвечает за все события и манипуляции с графическим интерфейсом. В другом потоке должны выполняться длительные действия, чтобы пользовательский интерфейс не блокировался / зависал.
(я думаю, что важно понять эту основную концепцию разработки пользовательского интерфейса, а не просто использовать AsyncTask и думать, что это что-то специфичное для Android)
EDIT