2

我正在使用 Robospice。我想编写一些可重用的代码来停止 ProgressBars 和 ProgressDialogs 待处理的网络请求已清除当前活动。但是,我遇到了几个问题。

我通过检测自定义 SpiceServiceListener 来调用我在每个活动中实现的自定义回调来观察请求何时完成。在 onRequestAdded() 期间,我会显示任何 Progress UI 元素。在 onRequestSucceeded()、onRequestFailed() 和 onRequestCancelled() 期间,我检查 getSpiceManager().getPendingRequestCount() 以查看它是否达到零,然后隐藏任何 Progress UI 元素。

在我的应用程序中,未决请求计数从未达到零(至少在这三种方法中),但它似乎停止在 1。这是真的,即使我可以从 Retrofit 日志中看到我的请求似乎都已完成。

未决请求计数是全局的还是特定于当前活动及其香料管理器实例?是否有更好的方法来监视当前活动中完成的所有请求?

4

1 回答 1

1

我有一个答案。我错过了检测 onRequestProcessed(),因此未决网络请求的数量似乎从未达到零。挂起的请求计数现在确实达到零。

我仍然不知道计数对于当前活动及其 SpiceManager 实例是全局的还是本地的,但我从我的新代码中得到了有用的结果。

于 2014-02-14T17:46:02.003 回答