从核心数据中保存CKAsset

时间:2017-11-17 18:23:42

标签: swift core-data cloudkit ckasset

我有一些像图片这样的数据,作为二进制数据存储在Core Data中并标记为“允许外部存储”。我想将这些数据写入CloudKit。是否有可能获取此数据的URL并将其传递给CKAsset,或者以某种方式将此数据转换为CKAsset而无需将此数据双重写入某些临时文件?谢谢。

1 个答案:

答案 0 :(得分:1)

不支持直接访问外部二进制数据,并且没有API。非正式地,不难确定文件存储在哪个目录中,但它没有用,因为

  • 文件名是UUID,并且没有记录的方法将托管对象链接到UUID,因此您不知道要使用哪个文件。
  • 选项是允许外部存储,因此无法保证存在外部文件。某些实例可能不使用外部存储。

我不确定CKAsset需要什么,但您必须先通过托管对象查找二进制数据。