我想要存储在特定相册中的视频列表(VideoMaker)。 此列表是URL数组。
我编写此代码以获取视频,但它提供了URL的空值。
[_library enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop){
NSLog(@"succed");
if (group != NULL) {
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index,BOOL *st){
if ([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypeVideo]) {
NSLog(@"asset: %@", result);
[assets addObject:result];
}
}];
}
[self.collectionView reloadData];
} failureBlock:^(NSError *error) {
NSLog(@"Failure");
}];
在此代码_ 库是( ALAssetLibrary ),资产是( NSMutableArray ) 我在我的Iphone中创建了一个专辑,所以我只想获得存储在我的专辑中的这个视频。
答案 0 :(得分:1)
我在这里添加了assetfilter。使用属性名称
新代码是:
[_library enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop){
if ([[group valueForProperty:ALAssetsGroupPropertyName] isEqual:@"VideoMaker"]) {
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop){
[group setAssetsFilter:[ALAssetsFilter allVideos]];
if ([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypeVideo]) {
NSLog(@"asset: %@", result);
[assets addObject:result];
}
}];
}
[self.collectionView reloadData];
//[self.activity stopAnimating];
//[self.activity setHidden:YES];
}
failureBlock:^(NSError *error){
NSLog(@"failure"); }];
}