0

在我开始实施另一种方法来存储我作为 CKAssets 上传的图像的元数据之前,请确保我没有遗漏任何东西。现在我已经向 CKAsset 添加了一个扩展,如下所示:


extension CKAsset {
    func getMetadata() -> [AnyHashable:Any]? {
        if let url = fileURL {
            let data = try? Data(contentsOf: url)
            let source = CGImageSourceCreateWithData(data as! CFMutableData, nil)
            let metadata = CGImageSourceCopyPropertiesAtIndex(source!, 0, nil) as? [CFString : Any]
            return metadata
        }
        return nil
    }
}

但它似乎已经清除了除了一些非常简单的属性(如宽度和高度)之外的所有元数据。

我是否遗漏了什么或者元数据没有与 CKAsset 一起保存?

4

0 回答 0