这是我第一次需要永久存储一些数据,所以在继续之前我需要一些建议。我读过有多种方法可以在 Android 设备上存储数据:
我不明白在第一个和最后一个之间哪个对我来说最好。
我的情况
我有一个带有标题、副标题、封面图片的书籍列表,每本书都包含一个带有标题、可选图像(如果可能是音频)和其他内容的卡片列表。
所以,我必须存储一个自定义类的数组列表,其中包含另一个自定义类的另一个数组列表和一些文本/图像
我应该采取哪种方法?
谢谢
答案 0 :(得分:1)
坦率地说,案例描述太多,无法提供明智的建议(因此问题应该结束)。
但如果您有疑问,那么安全/默认选择是数据库。在某些情况下,它可能会带来很大的开销(例如,将整个数组列表序列化为 blob 并存储为单个文件就足够了),但您不太可能将自己陷入困境。
添加(评论后)
使用数据库时,您不直接存储对象(因为 sql 数据库存储的是“关系”,您可以将其视为“行集”,而不是对象)。相反,您有一些代码(自定义的或来自库的)将对象转换为一行(或多行)以进行存储,还有一些代码将其转换为另一种方式。
如果您想存储实际对象,那么序列化到文件几乎是唯一的方法。