sharedpreferencesとは?初心者が押さえる基本と使い方をわかりやすく解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
sharedpreferencesとは?初心者が押さえる基本と使い方をわかりやすく解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


sharedpreferencesとは?

sharedpreferencesは Android アプリの中でよく使われる「小さなデータを保存しておく仕組み」です。主に文字列や数字、真偽値などのキーと値の組み合わせを保存するための仕組みで、アプリを閉じてもデータが残る点が特徴です。つまり、アプリを再起動したときにも直前の設定や選択を覚えておくことができます。

共有のデータ保管場所としては、ファイルを自分で管理する必要がない点が魅力です。複雑なデータベースを使わず、シンプルな設定情報を保存するのに向いています。例としては「ログイン状態の有効/無効」「音量の設定」「テーマカラーの選択」など、少量の情報を保存する場面が多いです。

実際には、取得する名前の名前空間(名前)とアクセス用のモードを指定して保存操作と読み出し操作を行います。保存は「編集者(Editor)」を使い、保存内容を確定させることでデータが書き換わります。読み出しは取得時に指定した名前空間から値を取り出します。

基本の使い方

1つの名前空間を用意して、そこにデータを保存します。まずSharedPreferencesオブジェクトを取得します。続いてEditorを使って値を書き込み、commitまたは apply で確定します。読み出しは同じ名前空間から値を取得します。

以下は代表的なコードの流れです。<span>実際のコードはプロジェクトの構成やAndroidのバージョンで微妙に違うことがありますが、基本の考え方は同じです。

基本の流れ取得 → 書き込み → 読み出し具体的には、getSharedPreferences または PreferenceManager.getDefaultSharedPreferences で名前空間を決め、Editorを使ってデータを追加します。

具体例:設定を保存する

以下は中学生にも分かりやすい日常的な例です。例として「ユーザー名」と「ログイン状態」を保存します。

例の説明:ユーザーがアプリにログインしたときに ユーザー名ログイン状態 を保存します。次回起動時には保存された値を読み出して、画面を自動的に設定します。

項目保存する値の型説明
usernameStringユーザー名を保存
loggedInbooleanログイン状態を保存
lastThemeStringテーマカラーの選択を保存

サンプルの流れ

1. SharedPreferences を名前空間とモードで取得する

2. Editor を作成して、保存したい値を putStringputBoolean などで設定する。

3. apply または commit書き込みを確定する。

4. 読み出しは getStringgetBoolean などのメソッドを使って値を取得する。

5. アプリの起動時や表示の直前に、保存されている値を読み込んで UI を更新する。

重要なポイントapply は非同期で保存され、commit は同期的に保存されます。UI の軽さを重視する場合は apply を使い、保存が確実に完了してほしい場面では commit を使い分けましょう。

注意点

保存できるデータ量は小さめです。大容量のデータには不向きなので、ファイルやデータベースを別途検討します。

まとめ

sharedpreferencesは、設定や小さなデータを手軽に保存できる便利な仕組みです。使い方の核心は、名前空間を決めて、Editor で値を書き込み、読み出すときは対応する getXX 系のメソッドで取り出す、という基本サイクルを覚えることです。


sharedpreferencesの同意語

SharedPreferences
Androidが提供する、キーと値のペアを長期的に保存する設定データの永続化API。小さなデータの保存に適している。
Shared Preferences
SharedPreferencesの表記ゆれ。Androidのキーと値のデータを永続化する設定データの保存機能。
アプリ設定の永続化
アプリの設定情報をアプリを再起動しても保持するための保存機能。主にSharedPreferencesで実現されることが多い。
キーと値の永続化ストレージ
キーと値の組み合わせでデータを保存する、永続的なストレージの総称。SharedPreferencesを含む仕組みの説明。
XML形式の設定ファイル
保存データはXML形式のファイルとして内部ストレージに保存されることを示す説明。
内部ストレージの設定ファイル
アプリの内部ストレージに保存される設定ファイルという意味。
アプリ内プリファレンスAPI
アプリ内で設定を扱うためのAPI群の総称。SharedPreferencesはこの中核。
SharedPreferences API
SharedPreferencesを操作するための公式APIの名称。
設定データの永 perpetuation
設定データを永続的に保存すること自体の説明。
プリファレンス(設定)データストア
設定データを格納するストレージ機構の別称。
アプリ設定ストレージ
アプリの設定情報を保存するストレージ領域の総称。
設定の保存領域
設定データを保存できる場所の意味。

sharedpreferencesの対義語・反対語

一時保存
データを短時間だけ保存する仕組み。アプリを終了するとデータが消える可能性が高く、SharedPreferences のように長期保存を前提としない点が対義となる。
揮発性メモリ
RAM など電源を切るとデータが消える性質の保存領域。永続的保存を前提とする SharedPreferences とは対照的。
RAM上のデータ
デバイスのRAM上にのみ存在するデータ。電源オフ時やアプリ終了時に失われやすいのが特徴。
セッションデータ
現在のセッション期間中だけ有効なデータ。セッション終了後には破棄されることが多く、長期保存の SharedPreferences とは反対。
キャッシュ
よく使うデータを短期的に再利用するための保存。長期保存を目的とせず、揮発性・一時性が強い点が対義。
非永続的ストレージ
永続性を意図しないデータ保存方法。デバイスの再起動やアプリ終了でデータが消える可能性が高い。

sharedpreferencesの共起語

Android
SharedPreferences は Android アプリの設定・小さなデータを保存する機能で、Android での利用を前提に設計されています。
SharedPreferences
キーと値のペアを内部ストレージの XML ファイルとして保存する、設定情報の永続化の中心機能です。
Java
従来の主な開発言語で、SharedPreferences の操作は Java コードで多く記述されます。
Kotlin
現在の主流言語。拡張機能を活用して SharedPreferences の操作を簡潔に書けます。
Context
SharedPreferences を取得・操作するために必要な Android の基本クラス
getSharedPreferences
特定のファイル名とモードを指定して SharedPreferences を取得する呼び出しです。
SharedPreferences.Editor
値を変更する編集用オブジェクト。put系列・remove・clear で一括反映します。
Editor
SharedPreferences.Editor の別名として使われることがあります。
putString
文字列を保存するメソッドです。
getString
保存した文字列を取得するメソッドです。
putInt
整数を保存します。
getInt
保存した整数を取得します。
putBoolean
真偽値を保存します。
getBoolean
保存した真偽値を取得します。
putLong
長整数を保存します。
getLong
保存した長整数を取得します。
putFloat
浮動小数点数(float)を保存します。
getFloat
保存した浮動小数点数を取得します。
remove
指定したキーを削除します。
clear
全てのキーと値を削除します。
commit
変更を同期的に保存します(結果を true/false で返します)。
apply
変更を非同期に保存します。UI をブロックしません。
MODE_PRIVATE
ファイル作成時のモード。通常は他アプリから見えないようにします。
MODE_MULTI_PROCESS
複数プロセスからの同時アクセスを許す古いモード。現在は非推奨です。
PreferenceManager
設定関連の共有情報を管理する補助クラス。設定画面と連携することが多いです。
XML
保存データは内部ストレージ内の XML 形式ファイルとして管理されます。
プリファレンスファイル
SharedPreferences が保存される XML ファイルの名称。通常は your_prefs.xml のような形になります。
内部ストレージ
アプリ専用のストレージ領域。データは他のアプリから直接見えません。
EncryptedSharedPreferences
暗号化された SharedPreferences。機密情報を安全に保存します。
AndroidX
新しい機能やライブラリの集合。EncryptedSharedPreferences は AndroidX Security に含まれます。
DataStore
SharedPreferences の後継とされる新しいデータ保存手段。型安全・非同期操作が特徴です。
Preference
設定画面の UI 要素。SharedPreferences の値と連携して動作します。
PreferenceFragment
設定画面を実装するためのフラグメント
PreferenceScreen
設定画面の階層構造を定義する XML 要素。
OnSharedPreferenceChangeListener
値が変更されたときに通知を受け取るリスナー。
SharedPreferencesCompat
互換性を保つための補助クラス。古い API でも動くようにします。
getAll
現在保存されている全キーと値を取得します。
key
各値を識別する名前(キー)です。

sharedpreferencesの関連用語

SharedPreferences
Androidの設定データをキーと値で保存する、軽量な永続ストレージ。小さな設定情報や状態をアプリ内で永続化するのに適しています。
SharedPreferences.Editor
値を書き換えるための編集オブジェクト。put系メソッド、remove、clearを使って変更を行い、commitまたはapplyで保存します。
getSharedPreferences
特定の名前のSharedPreferencesファイルを取得するメソッド。複数ファイルを使い分けたいときに便利です。
MODE_PRIVATE
ファイルがアプリ内だけアクセスできるようにする保存モード。現在は標準の動作として使われます。
MODE_WORLD_READABLE_WRITABLE
旧来の他アプリからの読み書きを許可するモードです。現在は非推奨で使用しません。
PreferenceManager
PreferenceManagerはデフォルトのSharedPreferencesを取得するためのユーティリティクラスです。
DefaultSharedPreferences
アプリのデフォルト設定ファイルを指すSharedPreferences。通常はPreferenceManager.getDefaultSharedPreferences(context)で取得します。
getString
保存した文字列を取得します。キーとデフォルト値を指定します。
getInt
保存した整数を取得します。
getBoolean
保存した真偽値を取得します。
getLong
保存した長整数を取得します。
getFloat
保存した浮動小数点数を取得します。
getStringSet
保存した文字列集合(Set)を取得します。
putString
文字列を保存します。
putInt
整数を保存します。
putBoolean
真偽値を保存します。
putLong
長整数を保存します。
putFloat
浮動小数点数を保存します。
putStringSet
文字列集合(Set)を保存します。
remove
指定したキーの値を削除します。
clear
全データを削除します。
apply
変更を非同期で保存します。処理をブロックせずに継続します。
commit
変更を同期的に保存します。処理が完了するまで待機します。
XMLファイル
SharedPreferencesはXMLファイルとして保存され、ファイル名は<name>.xmlの形になります。
OnSharedPreferenceChangeListener
SharedPreferencesの値が変更されたときに通知を受け取るリスナーです。
EncryptedSharedPreferences
AndroidXのSecurityライブラリを使って暗号化して保存できるSharedPreferencesの実装です。
デフォルト値の扱い
getX系のメソッドにはデフォルト値を指定します。未設定時の戻り値を決められます。
Multi-processモード
MODE_MULTI_PROCESSは古い機能で、現代のアプリでは効果が薄く非推奨です。
Auto Backupと復元
デバイス間でのバックアップ機能によりデータの復元が行われることがあります。
データ型の制限
SharedPreferencesはプリミティブ型とSetのみ対応します。複雑なデータは別のストレージを検討してください。

sharedpreferencesのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
15474viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2481viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1112viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1091viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
984viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
936viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
894viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
885viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
825viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
823viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
753viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
741viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
647viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
645viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
642viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
574viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
561viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
541viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
536viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
496viws

新着記事

インターネット・コンピュータの関連記事