过滤视频时,照片流组返回的计数为 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 日):我的照片流不支持视频,只有共享流支持。