Построение и использование служб
Поскольку АзупсТазк является абстрактным классом, его необходимо настроить за счет расширения, что и делается путем создания класса DownloadImageTask. Мы собираемся использовать конструктор, принимающий ссылку на контекст вызова, который в нашем случае будет вызывающей активностью. Мы будем применять этот контекст для извлечения представлений активности.
АзупсТазк связаны следующие четыре шага.
- Проведите всю работу по настройке в методе опРгеЕхесиЬе(). Этот метод выполняется в главном потоке.
- Запустите фоновый поток с помощью Со1пБаскдгоипс1(). Обработка создания потока производится “за кулисами”. Этот код запускается в отдельном фоновом потоке.
- Обновите информацию о ходе работ с использованием методов риЬИзЬРгодгезз () и опРгодгеззирСаЬе(). Метод риЬИзЬРгодгезз() вызывается внутри кода СоБпБаскдгоипсЦ), а метод опРгодгеззирСаЬе() выполняется в главном потоке как результат вызова риЬИзЬРгодгезз(). С помощью этих двух методов фоновый поток может взаимодействовать с главным потоком во время выполнения. Это позволяет обновлять состояние в пользовательском интерфейсе до полного завершения фонового потока.
- Обновите пользовательский интерфейс в методе опРозЬЕхесиЬе() на основе полученных результатов. Этот метод выполняется в главном потоке.
Шаги 1 и 3 являются необязательными. В нашем примере никакой инициализации внутри метода опРгеЕхесиЬе() не делается, однако реализуется обновление информации о ходе работ, как указано на шаге 3. Основная работа фонового потока производится в методе Сошп1оаС1таде(), вызываемом из СоБпБаскдгоипсЦ). Метод Сошп1оаС1таде() получает URL и применяет ИЬЬрСИепЬ для выдачи запроса ИЬЬрОеЬ и получения ответа.
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.