android - 可以在非 UI 线程中运行 Robospice 监听器吗?

标签 android robospice

我正在考虑使用 robospice 库。从文档/示例中我看到请求在后台线程中执行,在 UI 线程中执行监听器。

我想知道是否有可能在非 UI 线程上通过 robospice 运行监听器?

假设我有请求 A 和 B 以及监听器(可以在 robospice 上执行)以防万一请求 B 取决于请求 A 的结果。所以当 A 完成时,它的监听器执行请求 B。没关系,但是如果我想读取用于请求 B 的文件的一部分,那么这会阻塞 UI几毫秒,因为 A 的监听器在 UI 线程上执行。

我可以通过使用 for 例如来解决这个问题HandlerThread,但我不喜欢这样 UI 将充当 A 和 B 之间的某种代理。

那么,可以在 UI 线程之外运行 robospice 监听器吗?

最佳答案

不,这在 RoboSpice 中并不容易。

唯一的方法是创建一个你自己的新 SpiceService 并传递给它一个带有自定义 DefaultRequestListenerNotifier 的自定义 RequestProcessor| .

您的用例是什么?

关于android - 可以在非 UI 线程中运行 Robospice 监听器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22862053/

相关文章:

java - setContentView 上的 InflateException(R.layout.activity_login);

android - ParcelFileDescritor.createPipe(),又名 pipe(2) 和安全性

android - 在android上选择文件夹对话框?

java - 无法使用 asynctask 获取自定义列表适配器来填充 ListView

android - pom.xml 中的 Maven 依赖错误

android - 在 BroadcastReceiver 中使用 RoboSpice

java - android.database.CursorIndexOutOfBoundsException...再一次

android - 无法使用 robospice 和 ormlite 存储 JSON 请求的嵌套部分

android - Robospice : CachedSpiceReques. 未找到 getSpiceRequest

java - 尝试在 Android 中将 bing 翻译器 API 与 Robospice 结合使用