0

我想列出所有视频。不仅仅是照片库中的视频,还有视频应用程序,包括电影,电视节目,音乐视频等等。在(*的UITableViewCell)的tableView列出所有视频(从照片库和视频应用)到uitableviewcell

ALAsset *asset = [videoLibrary objectAtIndex:indexPath.row]; 
videoURL = [[asset defaultRepresentation] url]; 
[videoURLs addObject:videoURL]; 
[cell.textLabel setText:[NSString stringWithFormat:@"Video %d", indexPath.row+1]]; 
[cell.imageView setImage:[UIImage imageWithCGImage:[asset thumbnail]]]; 

:的cellForRowAtIndexPath:

当我用ALAsset这样的方法,只在照片库中的视频会显示出来。有没有办法获得所有类型?提前

感谢

回答

0

我猜你需要以检索iOS设备上的所有视频,你可以找到相同in this post

+1

这不会从视频应用中提取视频 – 2013-12-03 16:57:53

+0

它只会从照片库(iPod库)中获取所有视频,而不是从其他应用获取.-好运 – 2013-12-04 04:05:22

0

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,代码0),^ {

NSMutableArray *assetGroups = [[NSMutableArray alloc] init]; 
    NSMutableArray *assetURLDictionaries = [[NSMutableArray alloc] init]; 

    // Process assets 
    void (^assetEnumerator)(ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) { 
     if (result != nil) { 
      if([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypeVideo]){ 
       [assetURLDictionaries addObject:[result valueForProperty:ALAssetPropertyURLs]]; 
       NSURL *url = result.defaultRepresentation.url; 
       [assetLibrary assetForURL:url 
           resultBlock:^(ALAsset *asset) { 
            if (asset) { 
             @synchronized(assets) { 
              [systemVideoArray addObject:asset]; 
              [self.mTableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO]; 
             } 
            } 
           } 
          failureBlock:^(NSError *error){ 
           NSLog(@"operation was not successfull!"); 
          }]; 
      } 
     } 
    };