使用PHAsset在多个设备上唯一访问iCloud照片

Gri*_*mxn 4 icloud photosframework phasset

有没有办法PHAsset在多个设备上唯一访问iCloud相册中的特定内容?

我编写了一个简单的应用程序,该应用程序列出.localIdentifier了iCloud共享相册中的缩略图和s,并且(自然地)它在不同的设备上显示相同的图像,但是,针对不同设备上的相同图像,localIdentifiers是不同的(这并不是那么令人意外) “本地”标识符)。

但是,我实际上要做的是将共享云的CoreData数据库中的记录与云中的图像相关联,而不是将图像嵌入CoreData(这是一个家谱应用程序,可能包含数千张图像),为此无论设备如何,都需要唯一的标识符。反正有这样做吗?

Jon*_*nny 5

PHAsset.cloudIdentifier 可作为私有API使用。

let identifier = phAsset.value(forKey: "cloudIdentifier") as? String
Run Code Online (Sandbox Code Playgroud)

请参阅iOS运行时标头:https : //github.com/JaviSoto/iOS10-Runtime-Headers/blob/master/Frameworks/Photos.framework/PHAsset.h


hol*_*ann 4

不幸的是没有。在早期的 iO​​S 8 测试版中,有一个云标识符(这正是您所寻找的),但后来从照片 API 中删除了。