iOS Photos Framework:是否可以从"People"智能文件夹中访问照片?

som*_*dev 9 iphone objective-c ios photosframework

我正在尝试访问PHAssetCollections PHCollectionList.主要思想是从我的iPhone(iOS 10.2)上的"People"智能文件夹中获取所有集合(以及内部资产).要获取PHCollectionList我正在使用当前代码:

PHFetchResult *listFetchResult = 
[PHCollectionList fetchCollectionListsWithType:PHCollectionListTypeSmartFolder 
                                       subtype:PHCollectionListSubtypeSmartFolderFaces
                                       options:nil];
PHCollectionList *list = listFetchResult[0];
NSLog(@"title: %@",list.localizedTitle);
Run Code Online (Sandbox Code Playgroud)

这按预期工作.控制台输出:"标题:人物".list.canContainAssets返回NOlist.canContainCollections返回YES.
然后,我正在尝试从list以下位置获取资产集合:

PHFetchResult *collectionFetchResult = 
[PHCollection fetchCollectionsInCollectionList:list options:nil];
Run Code Online (Sandbox Code Playgroud)

collectionFetchResult.count 总是返回0.但如果我打开照片应用程序,我会在"人物"文件夹中看到10个集合.

是否可以从照片应用中的"人物"智能相册访问集合(及其中的照片)?

ric*_*ter 8

"synced Faces"专辑是指旧功能(在某些配置中仍然支持):能够通过iTunes将iPhoto for OS X(10.10及更早版本)中定义的专辑同步到iOS设备.其中一张专辑是iPhoto的Faces功能(现代照片'人物功能的精神祖先).

没有用于访问由iOS 10照片中的人物功能创建的"专辑"的API.(适用于时刻,场景分类以及iOS 10中的大多数其他照片应用功能.)为了获得此类支持,最好的选择是提交错误.

  • 感谢您的澄清。报告了问题rdar:// 29797672(https://openradar.appspot.com/radar?id=4952697128091648) (2认同)