У меня есть концептуальная проблема, связанная с классом AsyncTask
. Мы используем AsyncTask
, чтобы основной пользовательский интерфейс не блокировался.
Но предположим, что я хочу получить некоторые данные из памяти устройства, и для этого я использую класс AsyncTask. Соответствующая строка кода будет выглядеть следующим образом (при условии, что тип данных возвращен как String):
//code
String data = new ExtendedAsyncTask().execute(param1, param2).get();
//use this returned value.
Не будет ли указанная выше строка блокировать пользовательский интерфейс, победив цель использования AsyncTask
? Если да, то как мне получить соответствующие данные без блокировки пользовательского интерфейса? Я хотел бы добавить, что следующей строке кода понадобятся эти данные для выполнения какой-либо задачи и, следовательно, зависит от возвращаемого значения.
Спасибо