core-data – 错误: – [UIImage _deleteExternalReferenceFromPermanentLocation]无法识别的选择器发送到实例

当我删除包含图像的托管对象时,在外部记录中存储为可转换值,然后我崩溃并出现此错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException',reason: '-[UIImage _deleteExternalReferenceFromPermanentLocation]: unrecognized selector sent to instance 0xde49360'

解决方法

我在 Apple Developer forums回答了类似的事情.
我猜你在数据建模器中的那个字段上选择了外部存储复选框.

有一个bug可以解决.我是这样做的:
一旦更新了数据并保存了上下文,任何删除它的尝试都会引发这个“无法识别的选择器”异常.
要强制可以响应_deleteExternalReferenceFromPermanentLocation消息的正确对象,请执行以下操作:

[[self managedObjectContext] refreshObject:myobject mergeChanges:NO];

该物体变成了一个故障.当您下次访问它或删除它时,外部数据将按预期删除,因为包装外部数据的正确对象将从存储中提取并正确响应_deleteExternalReferenceFromPermanentLocation.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...