2012-06-25 3 views
1

Что происходит, я извлекаю данные из веб-службы. Одновременно работает 6 асинхронных задач, чтобы получить 6 разных вещей. Проблема заключается в том, что при первом запуске асинхронной задачи я выхожу из системы, и когда я вхожу в систему с другим пользователем, первая задача async не выполняется снова. Я что-то забываю или только так. Как я могу снова выполнить первую задачу async?запустить асинхронную задачу снова после отмены, есть ли способ?

ответ

4

Нет, вы не можете повторно использовать свой AsyncTask. Если вы вызовете execute() на том же AsyncTask два раза, будет выбрано исключение.

AsyncTask s часто относятся к Activity и не предназначены для долгосрочных операций (таких как непрерывная выборка данных из веб-службы). Если вы хотите, чтобы ваши данные были получены после выхода из этой операции, вам нужно использовать вместо этого Service.

+0

Был бы какой-то способ сделать это. – Rookie

+0

Извините, нет. Если вы вызовете 'execute()' дважды на том же объекте 'AsyncTask', вы получите исключение. Похоже, вы хотите использовать «Сервис»? –

+0

Вы даете новому пользователю новую AsyncTask? –

Смежные вопросы