Android
AndroidStudio
android開発
SharedPreferences

SharedPreferencesとは

データベースを用いずとも、Key-Value形式で簡易的にデータを保持する(データ永続化)ことができる仕組み。
XMLファイルとして保存されます。
メモリ上にキャッシュするものなので、膨大なデータを保存することには向いていませんが、頻繁にアクセスするデータなどに対しては非常に有効だと言えるでしょう。

使い方

SharedPreferencesの主な使い方には、大きく分けて以下の2つのプロセスがあります。

  • データの書き込み(保存)
  • データの読み込み(取得)

例として、アプリを起動した日付に関して、keyを"LAUNCH_DATE"、valueを"date"として保存するケースを考えます。順を追って説明しましょう。

データの書き込み(保存)

インスタンスの取得方法にも様々あるのですが、今回はgetDefaultSharedPreferencesを用います。

// インスタンスを生成し、edit()を呼び出します
SharedPreferences pref = getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = pref.edit();
// KeyとValueを保存します
editor.putString(LAUNCH_DATE, date);
// 保存したデータを書き込みます
editor.apply();

データの読み込み(取得)

// 引数に先ほど設定したkeyを渡して、valueを取得します
String launch_date = pref.getString(LAUNCH_DATE, null);

基本はこれだけ!
公式ドキュメントにもSharedPreferencesの記述があるので参考にしてみてはいかがでしょうか。