【android】アプリの実機でのデバッグ時に、SharedPreferencesの内容を確認する方法
実際にandroidの開発をしていると実機での動作確認中に動作確認中のアプリのSharedPreferencesの中身を確認したくなることがあります。
その方法の忘備です。
【前提】:対象アプリがデバッグモードであること
①adb shellを実行
adb shell
② run-asコマンドでアプリを起動しdataディレクトリに入る
run-as [対象アプリのパッケージ名]
上記コマンドを実行すると/data/data/[対象アプリのパッケージ名]/へカレントディレクトリが移動し、[files][databases][shared_pref]ディレクトリが見えるようになります。
③SharedPreferencesが保存されているディレクトリに移動
cd shared_pref
SharedPreferencesはshared_pref配下にxmlで保存されています。
④SharedPreferencesの内容の確認
cat [対象SharedPreferencesのファイル名]
なお、Windowsのコマンドプロンプト上から、日本語が含まれているSharedPreferencesを確認する場合は、中身を確認した際に日本語の部分が文字化けするので、adb sehll実行前に「コマンドプロンプトのプロパティ」の「フォント」でMSゴシックを指定し、以下のコマンドを実行してコマンドプロンプトの文字コードをUTF-8にしてください。
chcp 65001
この方法は、すべての実機で実行可能ではないのでないのが残念です。
私の場合、Nexus7で④のSharedPreferencesの内容の確認する際にcatの権限がないので確認できませんでした。他の端末ではうまくいったのに。。。