В моем приложении я использую AsyncTask
классы для установления HTTP-соединений и загрузки информации для отображения.
Иногда объем данных является значительным и занимает некоторое время.Если пользователь и его телефон находятся в месте с медленным / плохим / нечетким приемом, могут быть тайм-ауты HTTP или, возможно, они теряют связь все вместе, и т. Д ...
Как лучше всего справитьсяэти тайм-ауты изящно?
Я истекаю с созданием обработчика Runnable
, который запускается через XX секунд после запуска AsyncTask
.Runnable
просто проверит, чтобы убедиться, что AsyncTask
все еще работает, и если это так, предположим, что соединение для передачи данных слишком медленное, иди и убьём поток и изящно выдаст сообщение об ошибке о соединении для передачи данных.
Это хороший подход или есть более практичный метод?