Загрузка изображения из Amazon S3 (с помощью помощника мобильного концентратора AWS)
Я пытаюсь загрузить изображение с именем "aaa.jpeg" в мою корзину s3, используя AWSMobileHubHelper. Я нашел эту функцию на их сайте документации.
func downloadContent(content: AWSContent, pinOnCompletion: Bool) {
content.downloadWithDownloadType( .Always, pinOnCompletion: pinOnCompletion, progressBlock: {(content: AWSContent?, progress: NSProgress?) -> Void in
// Handle progress feedback
}, completionHandler: {(content: AWSContent?, data: NSData?, error: NSError?) -> Void in
if let error = error {
print("Failed to download a content from a server.)")
// Handle error here
return
}
// Handle successful download here
if let image = UIImage(data: data!){
self.imageView = image
}
})
}
Как только загрузка прошла успешно ("Сделано", сообщение об ошибке отсутствует), я пытаюсь назначить изображение для imageView. Я могу сказать, что данные были успешно загружены. Я могу распечатать данные и увидеть знакомую двоичную структуру изображения. Но по некоторым причинам я не могу назначить UIImage для imageView. Потому что я не могу преобразовать данные в UIImage.
Я просто хочу знать, является ли это правильным способом загрузки изображения с s3 или я что-то упустил. Содержит ли "данные" в блоке завершения загруженное изображение? Я не могу найти какие-либо документы по этому вопросу.
Это правильная функция для загрузки с S3?
1 ответ
Да, данные содержат фактические данные изображения. Вы можете поместить загруженные данные в UIImageViewController, и он должен открыться нормально. Кроме того, это демонстрируется в примере приложения, которое можно загрузить с консоли мобильного концентратора.