0

AndroidManifest.xml文件中,我android:noHistory="true"activity. 在那activity,我有AsyncTask一个长期运行的任务。AsyncTask当我转到另一个时会继续运行activity吗?还是会打开另一个activity导致AsyncTask停止?

4

3 回答 3

1

是的,它会一直持续到完成。但请注意,您没有对 onPostExecute 中的活动进行任何操作。

于 2012-05-09T07:43:08.277 回答
0

它将继续,因为它在自己的线程中运行,但它涉及一些关于更新 UI 和处理屏幕旋转的潜在问题。

我建议您Service改为启动 a 并在其中运行您的AsyncTaskor Loader。完成后,您可以使用LocalBroadcastManager让任何活动知道您Service已完成并且需要更新 UI。

于 2012-05-09T07:44:50.340 回答
0

一个不错的选择是使用loaders,它们提供这种任务管理,并且会在轮换或其他原因导致活动消失的情况下取消底层异步任务。

于 2012-05-09T07:45:33.110 回答