Активность уничтожается из-за изменения ориентации или из-за закрытия приложения?

У меня есть Activity, которая запускает AsyncTask. Активность разрешено отображать в книжной или альбомной ориентации. Когда ориентация изменяется, действие уничтожается и создается заново. Задача продолжает работать независимо от того, сколько раз менялась ориентация. Он также успешно возвращает результаты деятельности (согласно ответу CommonsWare здесь http://goo.gl/WF1yW).

Чего я хочу добиться: когда активность уничтожается из-за закрытия приложения - задача должна быть отменена.Однако, когда активность уничтожается из-за изменения ориентации - задачу НЕЛЬЗЯ отменять.

В основном вопрос заключается в том, как различать два случая: закрытие приложения / изменение ориентации. В обоих случаях вызывается метод onDestroy(), и нет простого способа проверить что-то вроде isChangingOrientation()...

P.S. Я также могу рассмотреть совершенно другой подход, если это необходимо.

14
задан Stan 5 March 2012 в 22:46
поделиться