10

在 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 使用起来有点重。

4

1 回答 1

12

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

但是,PHObject实现了-hash-isEqual:方法。它还符合NSCopying协议,这意味着它可以用作字典中的键,可以放入集合等。当您重新加载PHAsset对象时,它也可以继续工作。这是对班级的巨大胜利ALAsset。的实现-isEqual比属性快得多localIdentifier,可以安全地在主线程上使用。您可以使用分析器来了解引擎盖下的内容。

于 2015-03-02T03:12:25.807 回答