【发布时间】:2011-04-15 11:18:22
【问题描述】:
我正在尝试编写一个 Activity,它会为长时间运行的操作生成一个 AsyncTask,并定期将状态更新发布回 Activity。我想确保 AsyncTask 在屏幕旋转或 OOM 等其他破坏条件下正确存活。
I've read this thread on the android-developers list,然后是led me to this implementation,这几乎就是我需要的。但是,我的 AsyncTask 的最后一步是从内容解析器中删除一些数据。不能跳过这一步是极其重要的,因为数据是敏感的,在正常情况下不应该留在手机上。但是,ContentResolvers 来自 Contexts,在本例中为 Activity,并且使用此方案,当 AsyncTask 准备好执行删除操作时,Activity 可能为 null。
在 AsyncTask 构造时从 Activity 获取 ContentResolver 并在 Activity 的生命周期之后保留它是否安全?如果没有,我该怎么办?
【问题讨论】:
标签: android android-asynctask screen-rotation