如何使用 PhotoKit 列出共享的照片流相册

Posted

技术标签:

【中文标题】如何使用 PhotoKit 列出共享的照片流相册【英文标题】:How to list Shared Photo Stream Albums with PhotoKit 【发布时间】:2014-09-21 07:25:13 【问题描述】:

我可以通过PHFetchResult *results = [PHCollectionList fetchTopLevelUserCollectionsWithOptions:nil];获取在设备上创建的相册列表

我想一定有类似的方法来获取共享照片流相册(或者我认为它们现在可能被称为“iCloud 照片共享相册”),但对于我的生活......无法弄清楚.有人解决了这个问题吗?

【问题讨论】:

【参考方案1】:

PhotoKit 的查询逻辑让我很困惑,但下面的答案对我有用(提示:您必须查询 PHAssetCollection,而不是 PHCollectionList

PHFetchResult *results = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAlbumCloudShared options:nil]

【讨论】:

我可以获取共享此相册的 cloudOwner 名称吗?【参考方案2】:

对于那些寻求快速语法的人:

let result = PHAssetCollection.fetchAssetCollections(with: PHAssetCollectionType.album, subtype: PHAssetCollectionSubtype.albumCloudShared, options: nil)

result.enumerateObjects  (phassetcollection, index, setThisToTrueToStop) in
    print("\(index): \(phassetcollection.localizedTitle)  \(phassetcollection.localIdentifier)")

【讨论】:

最近的 Swift 语法:let result = PHAssetCollection.fetchAssetCollections(with: PHAssetCollectionType.album, subtype: PHAssetCollectionSubtype.albumCloudShared, options: nil); result.enumerateObjects (phassetcollection, index, setThisToTrueToStop) in @otusweb 我可以获取共享此相册的 cloudOwner 名称吗?

以上是关于如何使用 PhotoKit 列出共享的照片流相册的主要内容,如果未能解决你的问题,请参考以下文章

[iOS] photoKit获取所有照片

如何从我的照片流相册中获取照片

如何像照片原生应用一样打开相册列表?

如何在 iOS/macOS 云共享相册中为照片附加短数据?

iOS PhotoKit:获取除全景图以外的所有智能相册

用于创建 iOS Photostream 相册的 API