私は SQLite.swift を使用しています。ドキュメントでは、データベースへのパスは次のとおりです。
let path = NSSearchPathForDirectoriesInDomains(
.DocumentDirectory, .UserDomainMask, true
).first!
しかし、既存のデータベースをインポートして使用したいので、既存のデータベースをキーボード拡張フォルダーにドラッグし、次のパスで接続を作成しました。
let path = NSBundle.mainBundle().pathForResource("db", ofType:"sqlite3")
だから、最初の方法で、データベースが保存されることに気付きました/Users/*/Library/Developer/CoreSimulator/Devices/8B1DB861-AA3F-446F-A559-D4727CDB9285/data/Containers/Data/PluginKitPlugin/0BC647E4-26F3-4A1F-8271-CC73C96FD197/Documents
2 つ目の方法では、データベースがアプリに保存されます。
/Users/*/Library/Developer/CoreSimulator/Devices/8B1DB861-AA3F-446F-A559-D4727CDB9285/data/Containers/Bundle/Application/E5D9514C-859A-4D4D-A771-A8CE9CDCD3E7/AppName.app/PlugIns/AppNameExt.appex
この 2 つの場所の違いは何ですか? 2 番目の方法では、データベースが含まれているため、アプリのサイズが大きくなる可能性がありますか? また、既存のデータベースを使用してアプリを AppStore にアーカイブ/送信したい場合、これが唯一の方法ですか?