对于允许我的组织成员在他们的移动设备上查看数据的应用程序,我需要在设备上存储预先格式化的数据,以便他们也可以离线查看。他们如何获取数据是通过 JSON 请求-响应。
响应格式如下(匿名 ofc):
[{
"firstname":"John",
"lastname":"Smith",
"group":"1",
"age":11,
"installed":"Ja",
"medical":"Is aan zijn linker zijde verlamd geweest.",
"notes":"Heimee. \r\nBeschermend opgevoed. \r\nTerug getrokken persoonlijkheid.",
"Insignes":["test", "Test2"],
"Parents":[]
},
{
"firstname":"Emely",
"lastname":"Watson",
"group":"33",
"age":14,
"installed":"Ja",
"medical":"",
"notes":"Test",
"Insignes":["Veilig & Gezond I","CWO II","CWO III","Kampeertechnieken & Pionieren"],
"Parents":[
{
"name":"ouder ouder",
"address":"op | 0000AA Amsterdam",
"phone1":"",
"phone2":"0612345678",
"mail":"example@google.com"
}]
}]
我已经阅读了一些关于如何最好地存储它的讨论:
可以在 SharedPreferences 中保存 JSON 数组吗?
如何在 SharedPreferences 中保存 JSON 数组?
Android:在 android 中为应用程序离线存储 JSON 数据的最佳方式是什么?
Android - 如何将 JSON 对象添加到 sharedPreferences?
通过阅读这些,我了解到 SharedPreference 文件比 sqlite 文件“更快”,但容易损坏。SQLite 是一个数据库,由于数据来自一个数据库,因此我倾向于以牺牲处理速度为代价来使用它。
现在我只需要存储然后读取数据,除非“主服务器”上有更新,否则它不会发生变异,在这种情况下,我可能会擦除本地数据并重新填充它。在这些线程中,我读到将 JSON 存储在 sharedpreference 中很容易但难以阅读。
但是在阅读了这些(以及更多)讨论之后,我并没有更接近了解/决定存储我的 json 的最佳方式是什么。
任何意见是极大的赞赏!