对于通过iCloud update发送的每个托管对象,此警告/错误将发送到控制台:
***错误:此进程调用了一个NSArray-taking方法,例如initWithArray:,并传入一个NSSet对象.现在正在解决这个问题,但很快就会让你感到悲痛.
我的托管对象是客户端,与评估有一对多的关系,如下所示.
class Client: NSManagedObject {
//other NSManaged vars are here
@NSManaged var assessment: NSOrderedSet
}
Run Code Online (Sandbox Code Playgroud)
从这个错误的时间(在无处不在的更新期间)以及这是我在项目中唯一使用NSSet对象的事实来判断,我可以假设在更新期间,当一个函数在期望NSArray时传递一个NSOrderedSet.
关闭iCloud可以消除错误.
我发现另外两个人有一个非常相似的问题: 使用iCloud启用Core Data NSArray-taking方法
但是,它们都没有为我的问题提供任何解决方 现在一切都很好,但"很快就会让你感到悲伤."
如果这里没有解决,我将把这个问题与苹果开发支持联系起来.