ALAssetsLibrary enumerateGroupsWithTypes:ALAssetsGroupPhotoStream 不包含组中的视频
Posted
技术标签:
【中文标题】ALAssetsLibrary enumerateGroupsWithTypes:ALAssetsGroupPhotoStream 不包含组中的视频【英文标题】:ALAssetsLibrary enumerateGroupsWithTypes:ALAssetsGroupPhotoStream doesn't contain videos in the group 【发布时间】:2014-10-21 21:39:11 【问题描述】:过滤视频时,照片流组返回的计数为 0。这是要重现的代码:
ALAssetsGroupType groupTypes = ALAssetsGroupPhotoStream;
ALAssetsFilter* assetTypes = [ALAssetsFilter allVideos];
ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init];
ALAssetsLibraryAccessFailureBlock failureBlock = ^(NSError *error)
;
ALAssetsLibraryGroupsEnumerationResultsBlock enumGroupsBlock = ^(ALAssetsGroup *group, BOOL *stop)
if (group)
[group setAssetsFilter:assetTypes];
NSString* name = [group valueForProperty:ALAssetsGroupPropertyName];
NSUInteger count = group.numberOfAssets;
NSLog(@"name: %@, count: %lu", name, (unsigned long)count);
;
[library enumerateGroupsWithTypes:groupTypes usingBlock:enumGroupsBlock failureBlock:failureBlock];
“我的照片流”和共享流都会发生这种情况。请注意,照片应用确实会显示视频。另请注意,过滤照片(使用上面的 [ALAssetsFilter allPhotos])确实有效。我已经在 ios 7.1.2 和 8.1 上重现了这个。
有其他人看到这个或找到解决方法吗?谢谢!
更新(2014 年 10 月 29 日):我的照片流不支持视频,只有共享流支持。
【问题讨论】:
【参考方案1】:来自link
我的照片流支持哪些照片格式?
我的照片流支持 JPEG、TIFF、PNG 和大多数 RAW 照片格式。 我的照片流不适用于视频。
在我的 iPhone 上,“我的照片流”相册中没有视频,只有照片。
【讨论】:
对不起...这是我的其余回复。另一件要提的是,我确实打开了“iCloud Drive”(设置 -> iCloud -> iCloud Drive)和“iCloud 照片库(测试版)”(设置 -> iCloud -> 照片 -> iCloud 照片库(测试版))在我安装了 8.1 的 iPhone 上。也许“......不适用于视频”意味着不完全支持它,但是?我写了一个错误 (18729083) 并将其提交给 Apple,看看他们是否会提供更多信息。收到回复后将更新此主题。 我没有打开这两个设置,:)。【参考方案2】:我的 PhotoStream 从不包含仅包含视频的照片。但是,共享照片流可以包含视频。 AssetsLibrary 不完全支持 iCloud 照片库 - 您可以切换到 PhotoKit 以获得完整的 iCloud 照片库支持。
【讨论】:
感谢您对我的照片流-vs-共享照片流的澄清!以上是关于ALAssetsLibrary enumerateGroupsWithTypes:ALAssetsGroupPhotoStream 不包含组中的视频的主要内容,如果未能解决你的问题,请参考以下文章
保存图像元数据 PHPhotoLibrary 与 ALAssetsLibrary