【发布时间】:2021-01-01 20:30:39
【问题描述】:
我正在编写一个应用程序,它使用 CoreData 使用 NSPersistentContainer 来保存数据。
在开发应用程序时,我想:
- 直接检查数据
- 备份数据
- 看看我更改捆绑包 ID 时会发生什么
我假设数据物理存储在某个地方,但我不确定在哪里查找。
【问题讨论】:
-
@gcharita 好问题。是的
我正在编写一个应用程序,它使用 CoreData 使用 NSPersistentContainer 来保存数据。
在开发应用程序时,我想:
我假设数据物理存储在某个地方,但我不确定在哪里查找。
【问题讨论】:
默认NSPersistentContainer将数据库存储在应用容器内Libray/Application Support目录下
要定位完整路径,在模拟器中,可以使用默认FileManager的urls(for:in:)函数打印applicationSupportDirectory:
print(FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask).first?.path ?? "nil")
如果您在实际设备上运行您的应用程序,您可以按照this 的回答下载应用程序容器。
对于沙盒应用,位置如下所示:
~/Library/Containers/…/Data/Library/Application Support/…
【讨论】:
~/Library/Containers/…/Data/Library/Application Support/… 找到了它。如果您想为沙盒应用程序添加它,我很乐意接受您的回答。谢谢。