2016-01-11 1 views
1

Tous les didacticiels que j'ai trouvés concernant le téléchargement d'images dans des compartiments AWS S3 impliquent l'utilisation des frameworks Bolts. Cependant, maintenant que j'essaie personnellement de suivre ces tutoriels, j'obtiens l'erreur de compilation: Cannot convert value of type 'BFExecutor to expected argument type 'AWSExecutor!'.Problème de type de données AWS S3 et boulons (Swift 2.0)

Sur ce bloc de code:

transferManager.upload(uploadRequest).continueWithExecutor(BFExecutor.mainThreadExecutor(), withBlock:{ [unowned self] 
     task -> AnyObject in 

     // once the uploadmanager finishes check if there were any errors 
     if(task.error != nil){ 
      NSLog("%@", task.error); 
     }else{ // if there aren't any then the image is uploaded! 
      // this is the url of the image we just uploaded 
      NSLog("https://s3.amazonaws.com/s3-demo-swift/foldername/image.png"); 
     } 

     self.removeLoadingView() 
     return "all done"; 
    }) 

Les arguments attendus pour la méthode de continueWithExecutor sont AWSExecutor! et AWSContinuationBlock !.

Mon PODFILE a actuellement:

platform :ios, '8.0' 
use_frameworks! 


pod 'Alamofire' 
pod 'SwiftyJSON' 
pod 'AWSS3' 
pod 'AWSCore' 
pod 'AWSCognito' 
pod 'AWSSNS' 
pod 'Parse' 
pod 'Bolts' 

a-Amazon changé SDK récemment et créé leurs propres types de données? Ai-je manqué une bibliothèque? Je ne trouve aucune source n'utilisant pas de boulons dans cette étape du processus de transfert.

Répondre

3

Vous pouvez essayer le code de modification:

transferManager.upload(uploadRequest).continueWithExecutor(AWSExecutor.mainThreadExecutor(), withBlock:{ [unowned self] 
    task -> AnyObject in 

maintenant AWS ont sous-classe de Bolt ne doivent donc pas utiliser le boulon.