Android - Как справиться с тайм-аутами AsyncTask? - PullRequest
2 голосов
/ 18 ноября 2011

В моем приложении я использую AsyncTask классы для установления HTTP-соединений и загрузки информации для отображения.

Иногда объем данных является значительным и занимает некоторое время.Если пользователь и его телефон находятся в месте с медленным / плохим / нечетким приемом, могут быть тайм-ауты HTTP или, возможно, они теряют связь все вместе, и т. Д ...

Как лучше всего справитьсяэти тайм-ауты изящно?

Я истекаю с созданием обработчика Runnable, который запускается через XX секунд после запуска AsyncTask.Runnable просто проверит, чтобы убедиться, что AsyncTask все еще работает, и если это так, предположим, что соединение для передачи данных слишком медленное, иди и убьём поток и изящно выдаст сообщение об ошибке о соединении для передачи данных.

Это хороший подход или есть более практичный метод?

1 Ответ

1 голос
/ 18 ноября 2011

Я давно программировал для Android, но я знаю, что у AsyncTask есть событие обновления (для отслеживания процента загрузки и тому подобное).Вы могли бы, вероятно, использовать это, чтобы проверить сам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...