Comment download et visualiser les images depuis le nouveau Firebase Storage?

Je suis capable de download des images vers Firebase Storage mais j'ai des problèmes pour les download. Ceci est mon code pour download des images:

let storage = FIRStorage.storage() let localURL : NSURL! = NSURL(ssortingng: "file:///Documents/co.png") // i also sortinged let localURL : NSURL! = NSURL.fileURLWithPath("file:///Documents/co.png") func download() { let storageRef = storage.referenceForURL("gs://project-5547819591027666607.appspot.com") let imageRef = storageRef.child("co.png") let downloadTask = imageRef.writeToFile(localURL) { (URL, error) -> Void in if (error != nil) { print(error?.localizedDescription) } else { self.imageView.image = UIImage(data: data!) } } } 

Je reçois – Facultatif ("Une erreur inconnue s'est produite, veuillez vérifier la réponse du server.")

Aussi une fois que je les ai téléchargés Comment pourrais-je voir cette image?

Pour essayer de voir si l'image a été téléchargée, j'ai créé un UIImageView et lui ai donné une sortie dans le storyboard appelé "imageView" puis j'ai défini l'image téléchargée sur UIImageView.

 self.imageView.image = UIImage(data: data!) 

Essayer

d'abord get une reference à l'image que vous souhaitez download en utilisant

 let reference = FIRStorage.storage().reference("uploads/sample.jpg") 

Si vous savez que la taille de l'image est faible – comme 1-2 mb max. download l'image en memory

 reference.dataWithMaxSize(1 * 1024 * 1024) { (data, error) -> Void in if (error != nil) { print(error) } else { let myImage: UIImage! = UIImage(data: data!) } } 

Ce sera le moyen le plus rapide et le plus facile de download directement à partir de Firebase Storage.

Cependant, il y a des cas où vous voulez les blocs de progression et certaines autres choses comme la caching. Dans ce cas, vous pouvez utiliser une tierce personne comme Alamofire pour download l'image depuis l'URL que vous avez récupérée depuis Firebase Storage.
Pour get l'url faire quelque chose comme ça

 reference.downloadURLWithCompletion { (URL, error) -> Void in if (error != nil) { // Handle any errors } else { print(URL) // download image using NSURLSession or Alamofire } }