我目前的应用程序数据管理方法给我带来了麻烦

时间:2017-05-27 08:01:17

标签: android

我的应用程序有各种活动和碎片。每次启动应用程序时,我都会从我的Contact类中的数据库中检索一些记录(Application s)并将其存储在当前的应用程序会话中。

我有一个名为Contact的对象/实体,其中有几个存储在数据库中。事实证明,根据我的活动的不同观看要求,每个活动都需要一个不同的"联系相关数据的视图。

对于前者,ContactsListActivity可能只想保留Contact(s)列表,而MessageRecordsActivity可能会显示Contact及其相关Message }}第

而且,我无法在Application课程中检索太多数据,否则我的记忆会膨胀。因此,从Db按需加载数据的所有组件最终都具有相同Contact副本。例如,ContactsListActivity依赖于List<Contact>的Application类,但MessageRecordsActivity从Db按需检索数据并得到Map<Message, Contact>。这些新检索的ContactMessage配对可能会与Contact中的某些List<Contact>重叠

关键是每当我查询Db时,我最终都会检索 fresh Contact。现在,你不能为此归咎于Db代码(因为每个查询都会产生新数据),但我想要的是每当我从任何地方检索Contact并将其与任何其他对象关联时,必须最终成为记忆中的单一副本。同样,如果某个组件在一个位置更新Contact,则必须反映在所有其他App组件中。

我的要求也变得复杂,因为我有动态生成的新数据,还必须更新到所有数据源。

我目前尝试管理Application类中的数据的方法已经让我难以管理。是否有最佳实践,框架组件/ API或建议用于管理我的App数据的任何工具?

注意: 我查看了ContentProvider的文档,但在从Db和检索时共享数据时似乎有用与其他应用。我的要求是关于物理内存本身的数据管理。

0 个答案:

没有答案