在Android应用程序中存储大量静态对象的最佳方法是什么?
这是一个参考应用程序。一个对象可以有很多孩子。
数据库会很好,但是我必须在安装应用程序时从一堆插入中初始化它的所有内容,这会导致在应用程序存储中有两次信息(大量的插入和数据库信息)。我找到了一些解决方法,设置了初始数据库,并预先填充了内容,但似乎一般来说这不是一个好习惯。
我想我不能使用strings.xml文件,因为我无法在那里创建复杂的对象(例如,根据对象的数量不同的子节点)。
存储和访问此对象的最佳方法是什么?
答案 0 :(得分:1)
您可以在XML中定义所有这些,它可能是相当大且复杂的XML,但它可以完成。
虽然XML适用于初始存储和数据复制,但它不适合(快速和频繁)数据访问
如果您有大型和复杂数据结构,您需要访问经常并且速度比您可能重要唯一的选择是DB
因此,将初始化数据存储在XML中,初始化DB一次,然后从DB运行您的应用程序
如果对象的数量不是很高,您可以使用 in-memory-DB 来提高性能。
另一种选择:您可以在线提供中央数据库,并将应用程序连接到远程在线中央数据库以获取初始化数据。