Шаг # 1: Сделайте ваш AsyncTask
статическим внутренним классом или обычным полным Java-классом.
Шаг # 2: вручную связать действие, с которым должна работать задача, с помощью параметра конструктора, который содержится в элементе данных задачи.
Шаг # 3: вернуть объект задачи из onRetainNonConfigurationInstance()
Шаг # 4: В onCreate()
нового экземпляра действия получите существующий объект задачи с помощью getLastNonConfigurationInstance()
и вручную заново свяжите действие, с которым задача должна работать, с помощью метода установки.
Шаг № 4: При необходимости измените onPostExecute()
, чтобы он не ссылался на действие.
Вот пример проекта , демонстрирующий этот поток.