Фактическая работа выполняется в Asynctask
, AsyncTask
возвращает результаты. Пользователям нужна визуальная подсказка о том, что происходит за кулисами, что предполагает последовательное выполнение нескольких независимых модификаций пользовательского интерфейса. Модификации пользовательского интерфейса включают анимацию, поэтому следующее задание в очереди должно ждать завершения анимации текущего задания. [последовательность не фиксирована, а меняется в зависимости от результата, полученного AsyncTask
.]
Вся тяжелая работа, такая как доступ к сети, выполняется AsyncTask
, я ищу лучший способ последовательного изменения пользовательского интерфейса.
Мой текущий подход: в настоящее время я использую https://github.com/yigit/android-priority-jobqueue
Когда модификация пользовательского интерфейса завершается, она отправляет событие на шину событий, и jobManager
запускается [она останавливается, когда вызывается onRun
job
].
В настоящее время я публикую обработчик пользовательского интерфейса внутри onRun
файла Job
. Это работает, но библиотека предназначена для записи на диски и длительных операций, а не операций пользовательского интерфейса. Есть ли лучший способ сделать это?