问题标签 [nspersistentstore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 在多个 NSPersistentStoreCoordinator-s 之间传递 NSManagedObjectID-s 是否安全?
我有多个 NSPersistentStoreCoordinator 实例,每个实例只有一个 NSPersistentStore,都指向同一个 sqlite 文件。在我的测试中,在它们之间传递 NSManagedObjectID 对象,然后调用
- (NSManagedObject *)existingObjectWithID:(NSManagedObjectID *)objectID error:(NSError **)error
关于 NSManagedObjectContext 似乎工作正常,但我还没有遇到来自苹果的任何文档,证实这应该工作正常。
所以,我的问题是,如果有人知道这是否应该工作(一些苹果文档的链接确认它会很棒!),是否有人知道这通常不应该工作,我不应该这样做这,那也太棒了!
core-data - UImanagedDocument 的 persistentStore iCloud 备份
我正在尝试为核心数据 UIManagedDocument 创建备份,并将它们存储在 iCloud 中。自从我尝试这样做以来已经超过 2 个月了,我不明白该怎么做。互联网上根本没有任何信息......我试图至少创建本地备份,但它也不起作用这是代码:
调用替换时它会记录错误:
ios - CoreData 和 iCloud;如何跟踪上次保存到云端的设备?
我有一个由 iCloud 支持的 CoreData 应用程序(使用https://github.com/lhunath/UbiquityStoreManager)。在一个用例中,具有本地存储的用户启用 iCloud(其中数据已经存在)。我想提示用户决定是将本地数据迁移到 iCloud 还是只使用 iCloud 版本。作为其中的一部分,我想在 iCloud 中显示版本的设备名称和上次同步日期。
我一直在修改我的 NSPersistentStore 的元数据,但这似乎没有同步到 iCloud。
有什么建议么?
core-data - 核心数据更改本地存储观察者/通知
有没有办法为 Core Data 更改本地存储时日志显示的通知添加观察者?
[PFUbiquitySwitchboardEntryMetadata setUseLocalStorage:](754): CoreData: Ubiquity: mobile~E358C294-F23E-4FBA-8DA6-869A3A848906:R63H5582LG~com~Test~Tester
Using local storage: 0
我之所以问,是因为我想知道核心数据已更改为哪个本地存储。非常感谢!
core-data - 一个应用程序中的两个 Coredata 持久存储
我目前正在开发的应用程序有一个只读核心数据库,里面充满了问题(供孩子们回答),我希望可以通过应用程序更新自由地快速替换(理想情况下只需替换 sqlite 后端数据库)用户的文档文件夹(如果它与应用程序包中的版本不同)。
我还存储了用户创建的数据,当我替换问题数据库时我不想丢失这些数据。
在同一个应用程序中拥有两个持久性存储和数据模型是否可行(并且是良好做法),一个我可以替换,另一个通过更新保持,呃,持久性?
ios - 重新定位 NSPersistentStore
我想从我的 iOS 应用程序的 CoreData 存储中移动文件
../Library/Application Support/MyApp/
至
../Documents/Stores/
我可以使用 来执行此操作NSFileManager
,还是需要使用将商店从旧位置合并到新位置(新位置还没有数据)。
objective-c - CoreData,单独线程上的子 MOC,意外:错误:NULL _cd_rawData 但对象没有变成故障
好的,我对此有点迷失,我目前正在尝试使用第二个 ManagedObjectContext 运行后台核心数据操作,其类型设置为 NSPrivateQueueConcurrencyType 并因上述错误而惨遭失败。
我有一个 NSOperation 的自定义子类,它被传递一个字符串的 NSArray 和来自主线程的 PersistentStoreCoordinator,然后它创建自己的 ManagedObjectContext,运行查询并执行和操作。
这是该课程的代码:
@结尾
这就是我所说的:
编辑 1
我似乎遇到错误的特定行,或者至少 Xcode 中断的地方是:
我设法缩小了一点,包含要搜索字符串的术语列表的 NSArray 可能非常大,可能超过 1,000 个 NSString。如果我用那个大小的数组进行测试,我就会遇到问题。但是,如果我将数组减少到大约 15 个 NSString,我不会收到错误,所以我认为这不一定是线程相关的问题,我想知道数组是否在主线程中被释放。我已修改代码以进行深层复制,然后按如下方式进行 __block 复制,但似乎没有帮助。
和
事实上,在 Xcode 中断的地方,如果我 PO 数组,我得到一个找不到对象的消息,但如果我 PO 结果,我正确地得到一个返回的对象,它是 nil。
编辑 2
所以我做了以下改变,没有改变:
使 NSArray 强大而不是复制:
并在分配时将其复制:
并在处理对象的实际方法中使用 ___block 声明创建了 NSArray 的本地副本:
这肯定意味着它会在 ProcessProfanity 对象的生命周期内一直存在?
我期望能够从块内的断点 PO 数组是错误的吗?
ios - Is there a way to retrieve an NSPersistentStore knowing its URL?
Is there a way to retrieve an NSPersistentStore knowing its URL?
Something like:
** Obviously the method 'persistentStoreFromURL' doesn't exist!
Extra infos:
I know this store is loaded in some Coordinator (I don't know which one) and I have to remove it from its coordinator before migrating its data to another store. I only know the URL for this store.
I am using several coordinators at the same time. I want to avoid to loop through them and then loop again through all theirs stores to check if the store.URL is equal to url. This is the reason I am asking if it is possible to get the store directly from its url and then get its coordinator wihout all the looping.
ios - 从 iCloud 中删除核心数据失败
我正在尝试使用[NSPersistentStoreCoordinator removeUbiquitousContentAndPersistentStoreAtURL:options:error:]
. 但我得到奇怪的输出:
这是什么意思?
如何避免?我正在研究 iCloud 禁用/启用功能。详情在这里
更新:
core-data - 核心数据 NSPersistentStore 问题
我正在开发一个分阶段推出的应用程序。对于每个 sprint,都会发生数据库更改,因此已经实施了核心数据迁移。到目前为止,我们已经发布了 3 个阶段的版本。每当完成连续的渐变时,应用程序运行良好。但每当我尝试从版本 1 升级到版本 3 时,就会出现“无法添加持久存储”错误。有人可以帮我解决这个问题吗?