Фоновая задача, диалог выполнения, изменение ориентации - есть ли 100% работающее решение?

Я загружаю некоторые данные из Интернета в фоновом потоке (я использую AsyncTask ) и показываю диалоговое окно прогресса во время загрузки. Ориентация меняется, действие перезапускается, а затем моя AsyncTask завершается - я хочу закрыть диалоговое окно процесса и начать новое действие. Но вызов dismissDialog иногда вызывает исключение (вероятно, потому, что действие было уничтожено, а новое действие еще не запущено).

Как лучше всего решить эту проблему (обновление пользовательского интерфейса из фонового потока, который работает, даже если пользователь меняет ориентацию)? Кто-нибудь из Google предоставил какое-то «официальное решение»?

233
задан grebulon 14 July 2015 в 23:13
поделиться