- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我似乎找不到任何可靠的文档来解释删除 UIManagedDocument 的正确过程,特别是在 iCloud 选项已打开的情况下。
我了解此选项会删除此 fileURL 处的文件。如果不使用 iCloud,这似乎很好。
[[NSFileManager defaultManager] removeItemAtURL:fileURL error:&error];
removeUbiquitousContentAndPersistentStoreAtURL
吗?
UIManagedDocument
中的每个商店在调用
[NSFileManager removeItemAtURL]
之前.如果是这样,这是否记录在某处?
[NSPersistentStoreCoordinator removeUbiquitousContentAndPersistentStoreAtURL:storeURL
options:@{NSPersistentStoreUbiquitousContentNameKey:fileName,
NSMigratePersistentStoresAutomaticallyOption:@YES,
NSInferMappingModelAutomaticallyOption:@YES,
NSSQLitePragmasOption:@{ @"journal_mode" : @"DELETE" }}
error:&error];
最佳答案
这是我在这个问题上的两分钱。我尝试了 dtrotzjr 推荐的方法,但并没有取得很大的成功。似乎 removeUbiquitousContentAndPersistentStoreAtURL:options:error: 非常适合清除 UIManagedDocument 中的数据,但 Logs 文件夹仍然存在,我试图删除的文件的残余部分仍然存在。这是从 iCloud 或本地文档中完全删除 UIManagedDocument 的更简单方法:
+ (void)deleteDocumentURL:(NSURL *)url{
//if we have an iCloud Document, remove it from the UbiquitouseKeyValueStore
if ([self isiCloudURL:url]) {
[[NSUbiquitousKeyValueStore defaultStore] removeObjectForKey:[url lastPathComponent]];
}
//do the delete on another thread
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSFileCoordinator *coordinator = [[NSFileCoordinator alloc] initWithFilePresenter:nil];
NSError *coordinationError;
[coordinator coordinateWritingItemAtURL:url
options:NSFileCoordinatorWritingForDeleting
error:&coordinationError
byAccessor:^(NSURL *newURL) {
NSError *removeError;
//code for performing the delete
[[NSFileManager defaultManager] removeItemAtURL:newURL error:&removeError];
//if we have an iCloud file...
if ([self isiCloudURL:url]) {
//remove log files in CoreData directory in the cloud
NSURL *changeLogsURL = [[self urlForiCloudLogFiles] URLByAppendingPathComponent:[url lastPathComponent]];
[[NSFileManager defaultManager] removeItemAtURL:changeLogsURL error:&removeError];
}
}];
});
}
关于core-data - 删除 UIManagedDocument 的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19260222/
我一直在阅读苹果文档,但仍然有一个问题,我找不到答案。我有一个 UIManagedDocument 对象,它有两个嵌套上下文 - 主线程上的子上下文和私有(private)线程上的父上下文。接下来,我
我已经看过 How do I create a global UIManagedDocument instance per document-on-disk shared by my whole ap
在UIManagedDocument的文档中简要提到了以下内容: 为了支持异步数据写入,Core Data实际上使用一对嵌套的托管对象上下文。 是特定于UIManagedDocument还是Core
所以我将核心数据迁移到UIManagedDocument。 在iPhone模拟器上调用openWithCompletionHandler可以正常工作,但是当我尝试在真实设备上运行项目时,它始终返回NO
我有一个连接到 NSFetchedResultsController 的 TableView ,相应的 managedObjectContext 是 self.myDatabase.managedOb
好吧,假设我正在制作一个观鸟应用。 有一个“官方”鸟类数据库。它存储在一个 UIManagedDocument 中。它用于将所有鸟类填充到 UITableView 中,并使用图片和数据为每只鸟类提供详
我正在尝试使用 Core Data 制作一个 iPhone 应用程序。我必须使用 NSManagedObjectContext 来访问数据,为此我使用了 UIManagedDocument。但是,如果
我的应用使用核心数据 SQLite 数据库。我想让我的用户使用 iCloud 在设备之间同步它 - 我想我可以使用 UIManagedDocument。 我按照 Apple 的文档对其进行了子类化,并
我正在使用这个博客:http://www.adevelopingstory.com/blog/2012/03/core-data-with-a-single-shared-uimanageddocum
我找到了这些斯坦福教程 https://itunes.apple.com/us/course/ipad-iphone-app-development/id495052415 ,一直在听有关核心数据的讲
我正在开发一个使用 UIManagedDocument 子类的 iPhone 应用程序并将其文档存储在 iCloud 上。 一切正常,直到我更改了我的核心数据模型/方案(添加了一个新的模型版本 - 就
首先,我应该提到这是我在这个网站上的第一篇文章。我正在尝试自学 iOS 编程,在谷歌搜索答案时,我发现我经常被引导到这里。所以感谢所有在这里做出贡献的人。你已经帮了我很多了。 我一直在参加斯坦福大学
在斯坦福大学 CS193P 类(class)中,我开始在我的应用程序中使用 CoreData,该类(class)涉及 iOS 5 新类 UIManagedDocument 的使用。该方法本身非常简单,
我的应用程序中有一项功能,用户可以通过单击按钮重置应用程序上的所有内容。此时,我没有尝试删除所有核心数据关系(级联删除)和其他并发症,而是决定使用这段代码实际删除整个 UIManagedDocumen
我设置了异常断点,当我调用时- (void)saveToURL:(NSURL *)url forSaveOperation:(UIDocumentSaveOperation)saveOperation
我正在使用 UIManagedDocument 读取和写入 CoreData。我有 Document 类。这是一些教程中的文档: .h #import #import typedef void (
最近,我在 iOS 中使用一个时间表应用程序,我在使用 Core Data 时遇到了问题。 我的应用程序有一个主用户界面,有点像 Apple 创建的原始日历应用程序,我将所有事件数据保存在 Core
我在使用 UIManagedDocument 保存实体时遇到问题。我有一个 NSFetchedResultsController,其上下文设置为 UIManagedDocuments 上下文。我在 C
如标题中所述,我想同步打开 UIManagedDocument,即,我希望我的执行等到打开完成。我仅在 mainThread 上打开文档。 当前要打开的 API 使用 block [UIManaged
我一直在关注 CS193p 关于核心数据的讲座,但在插入新的托管对象时遇到了问题。 错误是: Terminating app due to uncaught exception 'NSInternal
我是一名优秀的程序员,十分优秀!