1

私の Twitter のようなアプリには、ベース アダプター用の非常に大きなデータ セットがあります。これは、それ自体が非常に大きいカスタム モデル (ネストされた参照を含む) で構成されています。

私が抱えている問題は、方向の変更でアクティビティを再作成するときに、リストの入力が非常に遅いことです (現在、データセットを に渡していますonSaveInstanceState)

モデルをシリアル化する方法を変更することを検討しました (現在、ディスクへの保存を高速化した Kryo を使用しています)、ディスクへのキャッシュと でのリロード、リスト フラグメントでのonCreate使用、setRetainInstance(true)親アクティビティ。

後者は最速ですが、向きの処理には多くの欠点があり、コードのチャンクを書き直さなければならないことも意味するため、これは私が採用したい最後のオプションでもあります。

私の質問は、向きに合わせてアダプターを再配置するベストプラクティスは何ですか?

リストをシリアル化してパススルーするときに、OOM エラーを予測できますonSaveInstanceState

編集: 重複の可能性あり Android の方向変更間でデータを保持する最良の方法

4

2 に答える 2