使用Apple Photos SDK读/写标签或关键字

时间:2018-11-02 15:15:38

标签: swift sdk tags keyword apple-photos

有人知道Apple的Photos SDK是否允许我们获取甚至修改用户照片库中存储的资产上的标签?

从官方文档中我了解到,SDK允许我们更改“收藏夹”状态,显示/隐藏资产,甚至找到资产的位置,但是我找不到提取照片标签(关键字)的方法。由macOS Photos应用存储。

这是当前Photos SDK所缺少的功能,还是我可以通过任何方式访问这些元数据?

谢谢

1 个答案:

答案 0 :(得分:1)

这里是一个示例,您如何使用PHAsset中的CIImage.properties获取元数据。

fileprivate extension PHAsset {
    func printMetadata() {
        let options = PHContentEditingInputRequestOptions()

        requestContentEditingInput(with: options) { (contentEditingInput: PHContentEditingInput?, _) -> Void in
            let img = CIImage(contentsOf: contentEditingInput!.fullSizeImageURL!)
            print(img?.properties)
        }
    }
}

对于iCloud存储的图像,添加以下行:

options.isNetworkAccessAllowed = true

我也没有在PHAsset中找到图像元数据。

要编写CIImage元数据,您可以尝试CIImage.settingProperties(_:)方法。