iOS8、PhotoKit、PHAsset、唯一标识符

iOS 8, PhotoKit, PHAsset, unique identifier

我正在开发一个 iOS 8 的应用程序并处理大量照片,我需要唯一标识 PHassets 但找不到任何 属性 可以使用?我找到了一个 属性 在

 PHObject/localIdentifier

记录在此处

https://developer.apple.com/library/ios/documentation/Photos/Reference/PHObject_Class/index.html#//apple_ref/occ/instp/PHObject/localIdentifier

有什么方法可以在 PHAsset 上拥有唯一 ID 吗? PHObject使用起来有点重

是的,这是唯一可以使用的属性。

但是,PHObject 实现了 -hash-isEqual: 方法。它还符合 NSCopying 协议,这意味着它可以用作字典中的键,可以放入集合等。当您重新加载 PHAsset 对象时,它也会继续工作。这是对 ALAsset class 的巨大胜利。 -isEqual 的执行比 localIdentifier 属性 快得多,可以在主线程上安全使用。您可以使用探查器了解幕后情况。