【发布时间】:2011-02-02 21:58:04
【问题描述】:
我遇到了异步任务和 http 请求的问题。
用户可以按下两个不同的按钮。这两个按钮都从 Web 服务器下载信息。我希望请求可以取消。在每次调用之前都会显示一个进度对话框。
http 请求在 asynctask 中执行,并且我在 progressdialog 上有一个 OnDismiss 侦听器,如果按下返回则取消 asynctask。
它的工作原理是 50/50。
如果我执行 http 请求,取消 asynctask,然后执行新请求,它可能会工作,但也可能导致 http 请求无限挂起。
这一行是它挂起的地方:
response = httpclient.execute(urlConnection, context);
有没有其他方法可以进行可取消的通话,或者我可以做些什么来避免挂起?
【问题讨论】:
-
这里是一个关于如何取消异步任务quicktips.in/correct-way-to-cancel-an-asynctask-in-android的示例
标签: android httprequest android-asynctask