Какое сжатие / качество изображения наиболее эффективно для iOS / Firebase Storage? - PullRequest
0 голосов
/ 03 июля 2019

Я работаю в 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)
                    }
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...