在android应用程序中,在何处以及如何高效地存储大量对象?

在android应用程序中,在何处以及如何高效地存储大量对象?,android,database,storage,reference-application,Android,Database,Storage,Reference Application,在android应用程序中存储大量静态对象的最佳方式是什么 这是一个参考应用程序。一个对象可以有多个子对象 一个数据库会很好,但当安装应用程序时,我必须从一堆插入中初始化其中的所有内容,这会导致应用程序存储中的信息出现两次(大量插入和数据库信息)。我发现了一些解决方法,可以使用预先填充的内容设置初始db,但这通常不是一个好的做法 我想我不能使用strings.xml文件,因为我不能在那里创建复杂的对象(例如,子对象的数量因对象而异) 存储和访问这些对象的最佳方法是什么?您可以在XML中定义所有这

在android应用程序中存储大量静态对象的最佳方式是什么

这是一个参考应用程序。一个对象可以有多个子对象

一个数据库会很好,但当安装应用程序时,我必须从一堆插入中初始化其中的所有内容,这会导致应用程序存储中的信息出现两次(大量插入和数据库信息)。我发现了一些解决方法,可以使用预先填充的内容设置初始db,但这通常不是一个好的做法

我想我不能使用strings.xml文件,因为我不能在那里创建复杂的对象(例如,子对象的数量因对象而异)


存储和访问这些对象的最佳方法是什么?

您可以在XML中定义所有这些对象,它可能是相当大和复杂的XML,但这是可以做到的。 虽然XML有利于初始存储和数据复制,但不利于(快速和频繁)数据访问。
如果您有一个大的复杂的数据结构,您需要频繁访问速度比数据库可能是唯一的选择更重要。
因此,将初始化数据存储在XML中,初始化DB一次,然后从DB运行应用程序。
如果对象的数量不是很高,那么您可以在内存数据库中使用,这将大大提高性能。

另一种选择:您可以让中央数据库在线可用,并让应用程序连接到远程在线
中央数据库以获取初始化数据。

这将很快成为性能与内存的问题,您需要提供更多信息,您需要超快还是不需要担心?不需要超快。假设有200个地方,每个地方都有50名儿童。在应用程序中,您可以从上到下(从家长到孩子)导航和搜索。