0

所以我查看了 github 上的robospice okhttpclient-sample,惊讶地发现它们演示了一个同步 HTTP 调用。RoboSpice 自述文件中的第二个要点强调它“异步执行网络请求(在后台 AndroidService 中)”。那么为什么是同步的例子呢?回调在哪里?

我还注意到链接到 RoboSpice 示例的 OkHttp 库是 v1.3,它现在已经很古老了。robospice -okhttp maven库也好不到哪里去——链接到库的 v1.5.4。两者都使用同步OkHttpSpiceRequest.open()函数调用,该函数在 v1.6 中已弃用,并在 v2.0 (RC) 中删除。异步性是在 v1.6 中首次引入的吗?

有没有人在 RoboSpice 中实现了对 OkHttp 的真正异步使用并获得了一些示例代码?如果没有,我有什么选择?

4

1 回答 1

0

尽管 Robospice 使用 OkHttp 的阻塞 API,但它从后台线程使用它,而不是您将请求排队的那个。所以从应用程序的角度来看,Robospice 是异步的。

OkHttp 2.0 将提供阻塞 API 和带有回调的异步 API。在幕后,回调 API 每次调用仍然使用一个线程。在 OkHttp 的未来版本中,我们计划通过在单个线程上调度多个调用来利用 SPDY 和 HTTP/2。

于 2014-05-31T01:35:28.183 回答