开始具有大量意图的活动

问题描述

| 我以ѭ0额外开始一项活动。此额外内容包含一个自定义对象的
List
,其中包含一堆类型,主要是字符串。我从项目的assets文件夹中读取数据,然后使用GSON解析(数据为JSON)。该文件的大小约为108KB。 在我的应用程序的整个生命周期中,所有数据都作为意向附加信息进行传递。这非常方便,因为我不必担心再次从资产文件夹重新加载数据,所有应用程序关闭恢复都已完成,并且我不需要管理sqlite数据库(版本,查询)。等)。 问题: 我发现传递这些额外功能可能会变得很慢(使用所有数据开始活动可能需要1.5秒或更长时间)。我似乎也没有显示任何“正在加载”对话框,因为这似乎是一项阻止活动开始并附加附加内容的呼叫。 问题: 我应该避免像我描述的那样传递这些额外内容吗?使用sqlite数据库与数据交互的最佳选择是吗?为了避免访问我的应用程序数据时出现大量sqlite数据库/全局静态变量的麻烦,您有什么建议? 将我的JSON数据拍入数据模型类并将它们作为意向附加信息传递是很容易且很好的(看似),而且我不想放弃它!     

解决方法

我遇到了同样的问题,并遵循了您已经描述的解决方案。我使用SQLite数据库存储信息,然后在访问数据库时仅传递唯一的ID作为额外的意图,并在调用的活动上显示一个“正在加载...”进度对话框。 使用SQLite的方法很简单。     ,为什么不将数据加载到Application类,Application类的onCreate上,然后从那里的每个活动访问数据呢?