带有加密CoreData的NSMergeConflict

时间:2014-10-14 22:03:27

标签: ios objective-c core-data encryption

我目前正在使用Gavin Black(https://github.com/project-imas/encrypted-core-data)提供的加密Coredata作为我自己的项目,我遇到了SELECTIVE NSMergeConflict异常。我说有选择性的目的,因为我注意到某些实体一直失败,并且一贯地按照其他实体的预期运行。情况如下:

  1. 清理安装应用并登录
  2. 登录后,我从云服务器下载数据(这很好)
  3. 我访问了一些数据,并尝试从云中提取更多详细信息(每次都失败)。
  4. 我得到的确切错误代码是 Cocoa错误133020

    我尝试过的事情:

    1. 我已经检查过以确保只有主线程正在访问/修改Coredata
    2. 我尝试将合并政策(例如NSMergeByPropertyObjectTrumpMergePolicy)应用于我的MOC
    3. 我应该注意,在将PSC从本机NSSQLiteStoreType切换到加密版本之前,所有实体都被正确地拉/插/修改/删除而没有错误。

1 个答案:

答案 0 :(得分:0)

通过确保在主线程上完成所有Coredata操作来解决问题。