私はカートに商品のリストを保存しなければならないeコマースアプリケーションに取り組んでいます。カスタムオブジェクトの格納に静的フィールドまたはSharedPreferencesを使用する必要がありますか?
まず、スタティックフィールドを使ってカスタムオブジェクト(製品)のリストを保存しましたが、アプリケーションがしばらくの間シーンの後ろにいたときに問題が発生しました。静的フィールドはデータを失います。
次に、製品をSharedPreferences
に保存することに決めましたが、カスタムオブジェクトを使用しないという問題があります。最初にGson
とシリアル化して保存しておきたいときは、逆シリアル化します。
SharedPreferences
の問題は、私はいくつかの余分な作業(シリアライズとデシリアライズ)をしなければならないということです。私は何をすべきか?データをグローバルに格納する他の簡単な方法はありますか?
いいえ一度に完全なオブジェクトを保存する場合は、シリアライズとデシリアライズを行う必要はありません。別のオプションは、共有環境設定の文字列として各オブジェクトを別々に保存することです –
カートアイテムを保存するベストプラクティスは –
あなたはすでにそれをやっています –