Я работаю в Xcode и имею приложение для iOS, подключенное к Firebase. В настоящее время я загружаю фотографии в Firebase Storage, используя приведенный ниже код. Работает нормально, но иногда картинки тоже загружаются за несколько секунд. Мне интересно, есть ли лучший способ загрузки / загрузки изображений? Я думаю, изображения, которые я использую, могут быть намного больше, чем когда-либо нужно на iPhone?
Мой текущий код включает в себя:
1. загрузить качество сжатия 0,8
2. скачать максимальный размер: 27 *1024* 1024
//IMAGE UPLOAD CODE SNIPPET
if let uploadImageData = photo.jpegData(compressionQuality: 0.8) {
let metadata = StorageMetadata()
metadata.contentType = "image/jpeg"
photoStorageRefFull.putData(uploadImageData, metadata: metadata) { (metadata, err) in
//IF ERROR
if err != nil {
print(err)
print("PHOTO ERROR")
} else {
//IF NO ERROR
print("photo success!")
counter = counter + 1
dispatch.leave()
}
}
}
//IMAGE DOWNLOAD CODE SNIPPET
let pathRef = DataService.instance.REF_STOR.reference(withPath: "\(userPhotoPath)/1.jpg")
pathRef.getData(maxSize: 27 * 1024 * 1024) { (data, error) in
if error != nil {
print("Error getting user photo.")
print(error)
} else {
print("Successful get user photo!")
let userPhoto = UIImage(data: data!)
let userInfo = User(firstName: firstName, lastName: lastName, email: "n/a", age: age, gender: gender, currentCity: currentCity, provider: provider, userID: userID, userPhoto: userPhoto!)
handler(userInfo)
}
}