Android 凌空缓存请求

Android volley cache requests

我经常查询我的网站;我有一个 REST 服务,所以我连接到 www.website.com/path/to/resource/id.json 并使用 Volley.

this 官方指南中,您会看到在底部他们建议使用单例模式。我正在使用它并且效果很好。


顺便说一句,我无法理解文档中的某些内容。如果您在该页面中查看上面的示例,他们会谈论缓存并且创建了一个 "explicit" 缓存。

在下面的示例(单例)中,他们没有设置任何缓存。所以我的问题是:

Is the Singleton-pattern-way to use request queues going to cache results?

我关心缓存,因为我多次调用相同的 url(如 www.website.com/rep/table/glass/7.json),缓存会保存连接和请求。模式是否足以允许缓存?我无法从文档中理解。

谢谢

Volley支持内置缓存,缓存的key是请求的“URL”。 Enabling/Disabling缓存,设置缓存过期时间(部分过期和完全过期)所有这些属性都可以使用Requestclass方法设置。要进行更多自定义,请扩展 Request class 然后进行自定义。

是的,您的齐射请求将被缓存。 Volley 为你设置了一个默认的缓存。 在你使用的 Singleton 中,当你调用

requestQueue = Volley.newRequestQueue(ctx.getApplicationContext())

在 getRequestQueue() 中,查看 Volley 代码 here。缓存已用不用担心