39
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SharedPreferencesに出力したデータの確認

Last updated at Posted at 2015-12-21

Device File Explorer

stackoverflow

AndoridStudio3.0以降はこれを使うのが便利。

  1. メニューから View > Tool Windows > Device File Explorer
  2. 目当てのパッケージの箇所を拡げる /data/data/[package-name]
  3. shared_prefs を開く

debugビルドのアプリしか中身は見れないので注意

以下は付録

##そもそもAndroidでのSharedPreferencesとは
データをxml形式でファイルに保存する、永続化のための仕組みの一つ。
iOSで言えばNSUserDefaultsを使うのと同じようなもの。

##以下のコードがあるとして

SharedPreferences preferenceService = PreferenceManager.getDefaultSharedPreferences(context);
preferenceService.edit().putString("hogehoge", "foofoo").commit();

contextはアプリケーションコンテキスト
上記のコードでプリファレンスに保存した場合

##保存パス

/data/data/"パッケージ名"/shared_prefs/"パッケージ名_preferences.xml"

パッケージ名がjp.co.hoge.hoge だとすると

/data/data/jp.co.hoge.hoge/shared_prefs/jp.co.hoge.hoge_preferences.xml

##パッケージ名_preferences.xmlの形式

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
  <string name="hogehoge">foofoo</string>
</map>

##保存した値の読出し

SharedPreferences preferenceService = PreferenceManager.getDefaultSharedPreferences(context);
String foo = preferenceService.getString("hogehoge" , null);

##保存したファイルの中身を確認したい場合

アプリの実機でのデバッグ時に、SharedPreferencesの内容を確認する方法

##前提
対象アプリがデバッグモードであること
ターミナルでadb コマンドを使えること(PATHが通っていること)

1.adb shellを実行

2.run-asコマンドでアプリを起動しdataディレクトリに入る

上記コマンドを実行すると /data/data/[対象アプリのパッケージ名]/ へカレントディレクトリが移動し、files,databases,shared_prefs ディレクトリが見えるようになります。

3.SharedPreferencesが保存されているディレクトリに移動

SharedPreferencesはshared_prefs配下にxmlで保存されています。

4.SharedPreferencesの内容の確認

対象ファイルをローカルPCにコピーする場合

# jp.ne.hogehoge は任意のパッケージ名とする
# /storage/sdcard0 は端末内の任意の保存場所とする
adb -d shell "run-as jp.ne.hogehoge cp /data/data/jp.ne.hogehoge/shared_prefs/jp.ne.hogehoge_preferences.xml /storage/sdcard0/jp.ne.hogehoge_preferences.xml"
# データファイルをPCに保存
adb pull /storage/sdcard0/jp.ne.hogehoge_preferences.xml ./jp.ne.hogehoge_preferences.xml

この方がPCの好きなエディタで確認できる。

39
42
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
39
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?