iCloud核心数据不传输图像

时间:2014-10-14 14:15:13

标签: ios core-data uiimage icloud

我正在开发支持iCloud的核心数据应用。我的一个托管对象有一个可转换的属性,我用它来存储一个图像,我在类头文件中定义为UIImage。这种方法在早期的非iCloud版本中运行良好,并且似乎适用于我用于创建带图像的新实体的设备(iPhone 5 w / iOS 7)。

但是在对等设备(运行iOS 8的iPad)上,即使实体完好无损,iCloud也无法使图像可用。在调试器中,有一个UIImage的地址作为对象的属性,但是没有图像。图像不大:只有.jpgs最大50kB。

可能相关,iPad上的应用程序需要很长时间来“使用本地存储:0”进行记录,我收到警告“下载文件失败,错误:错误域= NSCocoaErrorDomain Code = 512”文件下载时间“(在iPhone上没有问题。)其他帖子提到了这一点,但我没有找到一个明确的答案,而不是”这是一个iCloud问题“。一般来说,我的设备之间的iCloud共享令人沮丧地缓慢和不规律地工作。

关于这里发生了什么的任何想法?我正在使用我认为非常标准的iCloud核心数据堆栈,所以我不想占用那个空间帖子......

1 个答案:

答案 0 :(得分:0)

缺少的图像被证明是核心数据问题,而不是iCloud问题(尽管我仍在与iCloud搏斗)。问题是我正在设置托管对象的UIImage属性,直接引用我的包中的图像,而不是从这些图像生成的新UIImage对象。 (Full answer here.)对于iOS 8,图片在应用终止时不会持久存储到核心数据中。