我正在使用 Robospice。我想编写一些可重用代码,以便在为当前 Activity 清除未决网络请求后立即停止 ProgressBars 和 ProgressDialogs。但是,我遇到了几个问题。
我通过检测自定义 SpiceServiceListener 调用我在每个 Activity 中实现的自定义回调来观察请求何时完成。在 onRequestAdded() 期间,我显示任何 Progress UI 元素。在 onRequestSucceeded()、onRequestFailed() 和 onRequestCancelled() 期间,我检查 getSpiceManager().getPendingRequestCount() 以查看它是否达到零,然后隐藏任何 Progress UI 元素。
在我的应用程序中,挂起的请求计数从未达到零(至少在这三种方法中),但它似乎停在了一个。这是真的,尽管我可以从 Retrofit 日志中看到我的请求似乎都已完成。
挂起的请求计数是全局的还是特定于当前 Activity 及其 spice 管理器实例?有没有更好的方法来监视当前 Activity 中完成的所有请求?
最佳答案
我有一个答案。我错过了对 onRequestProcessed() 的检测,因此未决网络请求的数量似乎从未达到零。待处理的请求计数现在确实达到零。
我仍然不知道计数对于当前 Activity 及其 SpiceManager 实例是全局的还是局部的,但我从我的新代码中获得了有用的结果。
关于android - 当未完成的请求完成时,我如何询问 Robospice?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21761071/