对于我的 Android 应用程序,我希望将网络流量保持在尽可能低的水平(当然)。我知道HttpResponseCache但它只适用于 API >= 13,所以它不是我的选择。
我想到了使用LruCache,使用REST
Url 作为键(假设没有POST
数据)。当我从服务器 ( JSON
) 收到响应时,我立即使用Gson
.
什么是更好的价值?
JSON
字符串,然后再次反序列化它或Gson
存储POJO
s? 我知道反序列化需要一点 cpu 时间,但是将POJO
s 存储在我的缓存中可能有一个缺点?假设我有一个活动,它显示了一个
POJO
名为“产品”的内容(我从服务器获得JSON
)。在方向更改时,我是否可以忘记保留产品POJO
(通过savedInstanceState
或其他方式),因为再次检索它的网络调用很可能是“免费”的(因为它仍在缓存中)?为不同类型的对象设置单独的缓存还是只使用一个大缓存会更好吗?
关于如何确定缓存的合适大小的任何建议(在条目中
MiB
或仅在条目数中)