Flutterを使って個人で以下のスマホ向けのおみくじアプリ(大御心アプリ)を開発・運用しています。
[iOS]
https://apps.apple.com/us/app/%E5%A4%A7%E5%BE%A1%E5%BF%83%E3%82%A2%E3%83%97%E3%83%AA/id1627544916
[Android]
https://play.google.com/store/apps/details?id=jp.sikisimanomiti.oomigokoro
上記おみくじアプリはSQLiteを使ってローカルにAPIからの一部のデータを保持しているのですが、アプリを開発・デバッグする過程でSQLiteのテーブルのデータをGUIで確認したくなったので確認方法を調べました。
AndroidでSQLiteのデータを確認する方法
- ①Android StudioのDatabase Inspectorを使って確認する
- ②ADBコマンドを使う
①Android StudioのDatabase Inspectorを使って確認する
1 エミュレータでアプリを実行します。
2 メニューバーで「View」 > 「Tool Window」 > 「App Inspection」を選択します。
3 「App Inspection」が開いたら、実行中のアプリプロセスを選択します。
4 「Database Inspector」タブを選択します。
5 「Database」ペインに接続したアプリのデータベースを表示します。確認したいテーブルをクリックすると、実際に格納しているデータを閲覧できます。セルをダブルクリックすると、編集でき反映することができます。
参考
Database Inspector を使用してデータベースをデバッグする
②ADBコマンドを使う
DB Browser for SQLiteで直接AndroidのSQLiteファイルを参照することはできませんが、ADBコマンドを使うことでAndroidのSQLiteファイルを実機やエミュレータからローカルにコピーすることができます。ローカルにコピーして、DB Browser for SQLiteで開きたいと思います。
SQLiteファイルは端末内の以下のディレクトリに/data/data/[パッケージ名]/files/
にあったので、以下のコマンドでローカルにコピーします。
// ファイルへのアクセス権限を取得 & 参照可能なディレクトリにコピー & ローカルにコピー
$ adb shell 'run-as [パッケージ名] cat /data/data/[パッケージ名]/files/sample.db > /sdcard/sample.db' && adb pull /sdcard/sample.db ./sample.db
// DB Browser for SQLiteでローカルにコピーしたSQLiteを開く
$ open -a "DB Browser for SQLite.app" sample.db
感想
①の方法はGUIでデータを確認しつつ、変更・反映してアプリの動作をチェックすることもできたので、快適に開発できると思います。