Мое приложение продолжает сбой, когда я оставляю его в фоновом режиме, а затем возвращаюсь к приложению на экране. Я считаю, что это имеет какое-то отношение к моей AsyncTask, которая работает в onResume(). В этом answer на одном из комментариев парень говорит, чтобы «отслеживать экземпляр действия и делать асинхронную задачу, ожидая, что она будет не нулевой». Итак, как именно я могу дождаться, пока он не станет нулевым?Звонок getActivity() внутри AsyncTask безопасно
И вообще, какой самый безопасный способ обратиться к действию, когда у вас есть AsyncTask, работающий внутри фрагмента, который будет работать во время изменений жизненного цикла активности/фрагмента?
передать активность asynctask, в этом случае ваша деятельность не будет собираться с мусором до тех пор, пока ваша задача async не будет завершена. – dex
@dex, поэтому вы подразумеваете, что вы не вызываете getActivity() вообще в AsyncTask, а скорее передаете ссылку на активность в AsyncTask? И это автоматически удерживает активность от сбора мусора? –
Просто не используйте AsyncTask. Вместо этого используйте Loader (AsyncTaskLoader - хорошая отправная точка), которая предназначена для надлежащего управления изменениями конфигурации. – kcoppock