当设备只有很少的磁盘空间时,iOS会删除我的核心数据数据库
在我的应用程序中,我使用核心数据存储一些实体(而不是文件)。我注意到,如果设备的磁盘空间很小,iOS会从中删除我的db。虽然不是每次都会发生,但我已经抓到好几次了。如何保存数据库?我发现了关于它的讨论 如果我理解正确,我应该使用cfurlsetResourcePropertyWorkey函数,但我不明白如何在代码中应用它。也许有人能给我更清楚的解释当设备只有很少的磁盘空间时,iOS会删除我的核心数据数据库,ios,swift,core-data,Ios,Swift,Core Data,在我的应用程序中,我使用核心数据存储一些实体(而不是文件)。我注意到,如果设备的磁盘空间很小,iOS会从中删除我的db。虽然不是每次都会发生,但我已经抓到好几次了。如何保存数据库?我发现了关于它的讨论 如果我理解正确,我应该使用cfurlsetResourcePropertyWorkey函数,但我不明白如何在代码中应用它。也许有人能给我更清楚的解释 private static var persistentContainer: NSPersistentContainer = {
private static var persistentContainer: NSPersistentContainer = {
let container = NSPersistentContainer(name: "MyAppName")
container.loadPersistentStores(completionHandler: { storeDescription, error in
if let error = error {
print(error.localizedDescription)
}
})
return container
}()
private static var context: NSManagedObjectContext = {
persistentContainer.viewContext
}()
private static func createEntity(from product: Product) {
let productEntity = ProductEntity(context: context)
...
}
static func save(_ product: Product?, completion: @escaping (Error?) -> ()) {
guard let product = product else { return }
createEntity(from: product)
do {
try context.save()
} catch {
context.rollback()
completion(error)
}
}
我看不出链接的讨论在这里有什么关系,这与缓存文件夹或文件备份无关,我以前从未听说过操作系统删除数据库。