当设备处于脱机状态或已经下载了一些不应再次从服务器检索的内容时,保存内容数据的最佳做法是什么?
SQLite是实现这一目标的最佳方法吗?如果我想要存储的信息是作为JSON从API检索的,我应该创建一个数据库结构来解析并插入它吗?
我知道以上是不同的问题,但目的是相同的。
答案 0 :(得分:2)
使用Sqlite是一个坏主意,因为它非常慢并占用了大量不必要的空间。如果可能的话,序列化对象或使用SharedPreferences应该准备sqlite(除非你有一个数据库结构)。对于缓存和存储从互联网上提取的数据,我建议使用robospice:https://github.com/octo-online/robospice。它是一个非常完善的库,易于使用,应该在您从Internet下载数据或长时间运行任务时使用。
答案 1 :(得分:1)
我会说这取决于您要保存的数据类型。 Sqlite并不总是一个坏主意。它比在内存中存储数组要慢,但是如果你正在处理一个500条目的地址簿,那么数组将比数据库更加笨重。
Robospice看起来很有趣。