組織のメンバーがモバイル デバイスでデータを表示できるようにするアプリケーションの場合、事前にフォーマットされたデータをデバイスに保存して、オフラインでも表示できるようにする必要があります。データを取得する方法は、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"
}]
}]
これを保存するのに最適な方法について、いくつかの議論を読みました。
JSON 配列を SharedPreferences に保存してもよろしいですか?
JSON配列をSharedPreferencesに保存するには?
Android: Android でアプリの JSON データをオフラインで保存する最良の方法は何ですか?
Android - JSON オブジェクトを sharedPreferences に追加する方法は?
これらを読んで、SharedPreference ファイルは sqlite よりも「高速」ですが、破損しやすいことがわかりました。SQLite はデータベースであり、データはデータベースから取得されるため、処理速度を犠牲にしてそれを使用する傾向があります。
これで、データを保存してから読み取るだけで済みます。「メインサーバー」に更新がない限り、データは変更されません。その場合、おそらくローカルデータを消去して再入力します。これらのスレッドで、JSON を sharedpreference に格納するのは簡単ですが、読みにくいと読みました。
しかし、これらの(およびその他の)議論を読んだ後、jsonを保存する最良の方法を知る/決定することに近づきません。
どんなアドバイスでも大歓迎です!