Android heavy asyncTask导致手机重启

时间:2014-02-20 01:51:10

标签: android android-asynctask

以下是我要实施的内容:

当用户点击按钮时,我开始大约4到5 AsyncTask秒;每个AsyncTask启动一个URL请求,解析URL请求返回的XML,最后返回带有解析对象的数组。在完成所有AsyncTask之前,我会在屏幕中间显示一个旋转箭头。

问题是,当搜索开始几秒钟时我的手机突然重新启动,我不知道为什么。这种情况并不常见,但非常令人讨厌。

此外,箭头的旋转动画并不平滑:有时当解析器工作时,动画会延迟几秒钟。

我在考虑这是否是内存问题?或者,如果我应该按顺序执行解析工作?

欢迎任何想法,谢谢!

========================================

注意:

代码太长,所以我无法将其粘贴到此处。有5个解析器和太多的逻辑。

此外,当手机在搜索过程中随机重新启动时,没有错误日志

1 个答案:

答案 0 :(得分:0)

使用asconnectTask的Java线程:

  • 涉及中等到大量数据的网络操作 (上传或下载)需要运行的高CPU任务 在后台
  • 任何要控制CPU使用率的任务 相对于GUI线程

互联网上有很多好的资源可以帮助你:

http://www.vogella.com/articles/AndroidBackgroundProcessing/article.html http://www.mergeconflict.net/2012/05/java-threads-vs-android-asynctask-which.html