【发布时间】:2015-05-17 01:12:46
【问题描述】:
我在我的项目中使用 Android Volley 库来执行网络请求,一切正常,但我在使用该库的“取消”功能时遇到了一些问题。我解释我的问题..
我有一个活动,我在OnCreate 方法处执行请求,请求被调用,没问题。但为了确保cancel 方法有效,我想测试并尝试两件事:
-
我触发了我的请求,然后像这样取消它:
MySingleton.getMyData("urltocall", getDataListener, requestTag);MySingleton.getRequestQueue().cancelAll(requestTag);
这个有效!取消被调用(我也可以在 Volley 的 Request 类中看到它):
public void cancel() {
mCanceled = true; // my breakpoint is called here
}
-
我触发了我的请求,在调用我的活动的 finish() 方法和
onDestroy和/或onStop的活动方法之后,我调用了相同的代码:MySingleton.getMyData("urltocall", getDataListener, requestTag);MySingleton.getRequestQueue().cancelAll(requestTag);
但这不起作用!
requestTag 不为 null 并且很好地传递给 Volley,所以我不明白为什么第一种方法有效,而另一种方法无效...知道我的目的是在调用 onDestroy 时取消请求..
感谢您的帮助
【问题讨论】:
标签: android request android-volley