アプリ開発でお世話になるSQLite。
しかしググってもiOS SimulatorでのSQLiteの保存場所を明確に記載している記事がほとんどないので、保存場所がいまいちよくわからない人も多いと思います。
そこで今回はSQLiteの保存場所を一瞬で確認する方法をご紹介します。
開発環境
- MacBook Pro (macOS Big Sur バージョン11.2)
※今回はMac OSのみの説明です
SQLiteの保存パス
結論から言うとSQLiteの保存パスは以下の通りです。
このようにSQLiteのファイルの保存場所はかなりディレクトリ階層の奥深くにあるので、確認する方法を順を追って説明します。
SQLiteの保存場所を確認する方法【その1】
SQLiteのファイル名がわかっている場合は簡単です。
~/Library/Developer/CoreSimulator/Devices に移動します。
cd ~/Library/Developer/CoreSimulator/Devices
ファイルを探します。
find . -name "Yomoo.db" -type f
※ファイル名がYomoo.dbの場合
場所がわかりました。
あとはこのファイルを DB Browser for SQLite などで確認すればOKです。
SQLiteの保存場所を確認する方法【その2】
ファイル名がわからない場合の確認方法をご紹介します。
まずはデバイスIDを把握する
Flutterの場合は以下コマンドでデバイスIDを確認できます。
flutter devices
この場合、912AA73F-D0B0-4ADE-A176-51B7525A285F がデバイスIDです。
該当のアプリケーションIDを把握
デバイスIDがわかったので、次はアプリケーションIDを調べます。
そこで、まずはiOSシミュレータを一旦初期化します。
Device > Erase All Content and Settings... を選択して初期化します。
初期化したら、以下コマンドを入力してApplicationディレクトリに移動します。
cd ~/Library/Developer/CoreSimulator/Devices/912AA73F-D0B0-4ADE-A176-51B7525A285F/data/Containers/Data/Application
※912AA73F-D0B0-4ADE-A176-51B7525A285F の箇所は先ほど調べたデバイスIDを指定します。
ファイル内部を確認すると大量のディレクトリが作成されています。
1分ほど待って、別タブで目的のアプリを開きます。
Flutterの場合、以下コマンドを入力
flutter run
そして再度 ~/Library/Developer/CoreSimulator/Devices/912AA73F-D0B0-4ADE-A176-51B7525A285F/data/Containers/Data/Application の中身をlsコマンドで確認すると、作成時間が異なるディレクトリが一つだけ存在します。
これがアプリケーションIDです。
今回は E64271BD-BE74-4C7B-A926-C95CA67DE291 です。
デバイスIDとアプリケーションIDがわかったので、以下コマンドでSQLiteのファイルを見つけられます。
cd ~/Library/Developer/CoreSimulator/Devices/912AA73F-D0B0-4ADE-A176-51B7525A285F/data/Containers/Data/Application/E64271BD-BE74-4C7B-A926-C95CA67DE291/Documents
※912AA73F-D0B0-4ADE-A176-51B7525A285F の箇所は先ほど調べたデバイスIDを指定します。
※E64271BD-BE74-4C7B-A926-C95CA67DE291の箇所は先ほど調べたアプリケーションIDを指定します。
あとはこのファイルを DB Browser for SQLite などで確認すればOKです。
コメント