- 2015年5月30日
- Swift & iOS
CoreDataが使うSQLiteの保存場所パスを確認
Swift/iOS 開発で CoreData + MagicalRecord を使っていまして、CoreData が使っている sqlite ファイルが、Mac ストレージ上のどこの場所のパスに保存されるのかを調べました。以下の記事が参考になりました。
Users/ユーザー/Library/Developer/CoreSimulator/Devices/ランダムな識別子/data/Containers/Data/Application/ランダムな識別子/Documents/
ということで iOS8 では、~/Library/Developer/CoreSimulator/Devices/ 以下のパスに、sqlite データベースのファイルが保存されるそうです。
— 環境 —
Mac OS X Yosemite 10.10.3
Xcode 6.3.2
iOS Simulator 8.3
ランダムな識別子が、保存場所のパスに2箇所含まれるため、ディレクトリを1つずつ手動でチェックしていくのは骨が折れます。なので、以下2つの方法で目的の sqlite ファイルを探しました。
find コマンドで目的の sqlite ファイルを探す
一旦 ~/Library/Developer/CoreSimulator/Devices に移動した後、find コマンドを使う方法です。
|
1 2 3 4 5 |
$ cd ~/Library/Developer/CoreSimulator/Devices $ find . -name "TodoApp.sqlite" ./02E0C506-1B24-475E-B219-60F9D3D00938/data/Containers/Data/Application/744F0C86-899C-452E-92DC-16A316C40097/Library/Application Support/TodoApp/TodoApp.sqlite |
ここでは例として、”TodoApp.sqlite” という名前の sqlite ファイルを探しました。これで、TodoApp.sqlite の保存場所を発見できました。Xcode の Swift ソースコードで指定した sqlite ファイル名を検索に使う。
Finder から目的の sqlite ファイルを探す
2つ目は、Finder を使う方法です。~/Library/Developer/CoreSimulator/Devices に移動した後、open コマンドで Finder を起動する。
|
1 2 3 4 |
$ cd ~/Library/Developer/CoreSimulator/Devices $ open . |
~/Library/Developer/CoreSimulator/Devices のパスで Finder が起動するので、Finder の検索窓から目的の sqlite ファイルを検索します。例として、”TodoApp.sqlite” を検索しました。
Finder からでも目的の TodoApp.sqlite ファイルを探しだすことができました。ファイルの情報を見れば保存場所がどこかを確認できます。
sqlite ファイルの保存場所のフルパスをさくっと調べるには、find コマンドを使う方法が簡単です。
- - 関連記事 -
- Swiftで配列(Array)をソート(sort, sorted)
- MR_findAllSortedByでNSPredicateを使いつつソート(Swift/MagicalRecord)
- WKWebView(WebKit)とSwiftでウェブページを表示
- Swift/MagicalRecordでCoreDataのエンティティを削除
- XcodeのUILabelで複数行の文字列を表示させる
- Swiftで文字列(String)と数値(Int)を変換
- NSUserDefaultsにプロパティで値を保存・取得するSwiftラッパークラス
- UITableViewの特定のセルのみUser Interactionを無効にする
- CoreDataでcreated_at/updated_atの日付データを自動作成
- Swiftで日付(NSDate型)を文字列(String型)に変換
Leave Your Message!