[Android] データを保存し Android Studio で確認 SharedPreferences

アプリで使うちょっとしたデータを保存したい場合にSharedPreferences が簡単にできます。但し、データが多くなるような場合は データベースを使うことが推奨されています。単純な初期化のための環境変数などの用途ということでしょう。
 
EditText に入力し、保存したものを
ボタンをタップしてTextViewに表示させるアプリです

sharedpref0
EditTextに入力
sharedpref1b
SharedPreference に書き込み
sharedpref2b
読み出し


 

Android Studio 2.2
Android 7.0

 

sponsored link

SharedPreferences

 
後で出てきますが、SharedPreferencesの実体はxmlファイルです。アプリ内のメモリにxmlファイルでの書き込み、読出しをする訳なので、大量のデータのやり取り、プロセスをまたがったデータ取得は問題が起きる可能性があるようです。
簡単な初期起動が済んだかどうか、true/false 程度のデータを保存するためには手軽です。
 

SharedPreferences, Editor, MODE の設定

 
String 書込ケース

この例は、DataStore という名前で定義して、MODE_PRIVATE のモードで Key が input, value が例えば「abcdefg」を保存するケースです。モードは他にMODE_APPENDがあります。

  1. MODE_PRIVATE
    • このアプリからのみ読み書き可
  2. MODE_APPEND
    • 追加で書き込み
  3. MODE_MULTI_PROCESS
    • Serviceで書きこんだデータをActivityで読み出す場合はこれが有効
      残念ながらAndroid6.0で非推奨になりました

String, Int, Boolean, Long, Float の保存と読み出しの例です。
 

 
Projectに入れてまとめると
MainActivity.java

 
activity_main.xml

 

Android Device Monitor, DDMS で確認する

 
Android Studio で保存したデータを確認します
 
メニューの「Tools」->「Android」->「Android Dvice Monitor」を開きます。
右側にある「File Expoler」の /data/data/ 以下にパッケージ名があるのでそれを選択
その下の、Shared_pref フォルダーにxml があります。

SharedPreferencesの実体はxmlファイルでした。
 
スクリーンショット 2016-05-09 17.41.38
 
アイコンの「Pull a file from device」をクリックしてファイルを保存します。
 
スクリーンショット 2014-12-31 19.55.40
 
ファイルの中には、確かに保存したデータ「test」がありました
DataStore.xml

 
こんな風になっているのでした。
 
関連記事: