为了获取我的应用程序的数据,我使用 Jackson 将 Json 文件解析为(列表)自定义对象。当我启动我的应用程序时,我检查是否有可用的新 Json 文件并询问用户是否要下载它,否则我使用“旧”Json 文件。但是每次我启动我的应用程序时,我都会解析 Json。然后我使用应用程序类来保存我的对象列表并在需要时访问我的数据,大多数时候我只需要一个对象。
从具有多层嵌套对象的巨大列表中,我创建了一个简单的“平面”自定义对象数组列表,我只将创建列表视图所需的数据(名称、id、第二个文本和图片的 url)放入其中。当点击某些东西时,我使用 id 来获取所有数据。
每次解析整个 Json 文件非常耗时,并且使我的应用程序的启动时间变长。当然,这很糟糕。并且在应用程序类中保存的大量自定义对象会占用我设备的大量内存,有时在某些使用后类会被杀死,我需要再次重新解析。
有没有一种方法我不需要重新解析我的所有数据?我希望有一个这样的过程:
- 新的 Json 文件
- 第一次将总 JSON 解析为多层自定义对象列表
- 为列表视图创建简单列表
- 删除/清除大列表
- 一些聪明的方法来只得到一件巨大的物品,而不把整个清单留在我的记忆中。(也许与杰克逊有关)。
- 在销毁应用程序时,可能会保存简单列表,我读过一些关于 parceable 或 serializable 的内容?
任何人都知道如何实现这一目标?或者有其他很棒的想法?