2016-06-17 1 views
0

J'utilise PHCachingImageManager().requestAVAssetForVideo pour aller chercher des vidéos sur iPhone. Je ne reçois pas toutes les vidéos de mon iPhone. Les vidéos stockées dans les photos ne sont pas toutes récupérées.Ne pas obtenir toutes les vidéos de l'iPhone en utilisant PHCachingImageManager

Comment puis-je obtenir toutes les vidéos stockées dans le stockage iPhone.

Voici le code.

let options = PHFetchOptions() 

options.sortDescriptors = [NSSortDescriptor(key: "modificationDate", 
      ascending: true)] 

     let assetResults = PHAsset.fetchAssetsWithMediaType(.Video, 
                  options: options)   

     for i in 0 ..< assetResults.count{ 

      let object: AnyObject = assetResults[i] 

      if let asset = object as? PHAsset{ 

       let options = PHVideoRequestOptions() 
       options.deliveryMode = .Automatic 
       options.networkAccessAllowed = true 
       options.version = .Current 
       options.progressHandler = {(progress: Double, 
        error: NSError?, 
        stop: UnsafeMutablePointer<ObjCBool>, 
        info: [NSObject : AnyObject]?) in 

      } 

       /* Now get the video */ 
       PHCachingImageManager().requestAVAssetForVideo(asset,options: options,resultHandler: {(asset: AVAsset?,audioMix: AVAudioMix?,info: [NSObject : AnyObject]?) -> Void in dispatch_async(dispatch_get_main_queue(), { 

        /* Did we get the URL to the video? */ 
        if let asset = asset as? AVURLAsset{ 


       }) 

       }) 

      } 
     } 

Répondre

0

Vous devez avoir un coup d'oeil à l'intérieur PHFetchOptions Peut-être que certains de vos actifs vidéo sont cachés?

var fetchOptions = PHFetchOptions() 
fetchOptions.includeHiddenAssets = true 

Des DOCS-

// Que les actifs cachés sont inclus dans les résultats vont chercher. Par défaut, NO

includeHiddenAssets public var: Bool

Hope it helps.

+0

Salut, merci pour la réponse. J'ai essayé, mais je ne travaillais pas. –

+0

Quelque chose de commun avec les vidéos ne sont pas récupérées? –

+0

Ils ne se trouvent pas dans le dossier "Camera Roll". –