[解決済み】AndroidでSharedPreferencesにオブジェクトを保存/格納するにはどうすればいいですか?
2022-04-02 16:49:22
質問
私は、多くのフィールドを含む多くの場所でユーザーオブジェクトを取得する必要があります。ログイン後、これらのユーザーオブジェクトを保存/保管したいと思います。このようなシナリオをどのように実装することができますか?
このままでは保存できない
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("BusinessUnit", strBusinessUnit);
解決方法は?
gson.jarを使用して、クラスオブジェクトを 共有設定 . この jar は次のサイトからダウンロードできます。 グーグルグソン
または、Gradle ファイルに GSON の依存関係を追加します。
implementation 'com.google.code.gson:gson:2.8.8'
最新版はこちら ここで
共有プリファレンスを作成する。
SharedPreferences mPrefs = getPreferences(MODE_PRIVATE);
保存すること。
MyObject myObject = new MyObject;
//set variables of 'myObject', etc.
Editor prefsEditor = mPrefs.edit();
Gson gson = new Gson();
String json = gson.toJson(myObject);
prefsEditor.putString("MyObject", json);
prefsEditor.commit();
取得すること。
Gson gson = new Gson();
String json = mPrefs.getString("MyObject", "");
MyObject obj = gson.fromJson(json, MyObject.class);
関連
-
[解決済み】java.lang.RuntimeException: アクティビティを開始できない ComponentInfo
-
[解決済み] ユーザーが拒否する可能性のあるパーミッションが必要なコール
-
[解決済み] com.android.supportのライブラリは全て全く同じバージョン表記である必要があります。
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み] Androidでグローバル変数を宣言するには?
-
[解決済み】AndroidでPreferenceActivityからSharedPreferencesを取得する方法は?
-
[解決済み】SharedPreferencesにArrayListを保存する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】シンボル 'AppCompatActivity' を解決できない。
-
[解決済み] [Solved] Unsupported method: ベースコンフィグ.getApplicationIdSuffix()
-
[解決済み】"ビットマップが大きすぎてテクスチャにアップロードできない"
-
[解決済み】ビットマップを保存する場所について
-
[解決済み】ビューのルートとしてNULLを渡さないようにする(膨張したレイアウトのルート要素でレイアウトパラメータを解決する必要がある)。
-
[解決済み】android.content.ActivityNotFoundException: 明示的なアクティビティクラスを見つけることができません。
-
[解決済み】アクティビティにない場所でのgetLayoutInflater()の呼び出し
-
[解決済み】android.content.res.Resources$NotFoundExceptionの取得:androidにリソースが存在する場合でも例外が発生する。
-
[解決済み] Android SDK の場所には空白を含めないでください。NDK ツールで問題が発生するためです。
-
[解決済み】AndroidでPreferenceActivityからSharedPreferencesを取得する方法は?