iOS - обновить Firebase SDK с 4.0 -> последняя (6.21.0) ухудшает возможность загрузки изображений с помощью kingFisher - PullRequest
0 голосов
/ 30 марта 2020

Итак, мы обновили модуль FireBase с версии 4.0 до последней версии, и неожиданно появилась возможность загружать изображения.

вот что мы делаем:

public func imageFromURL(_ urlString: String, isSecure: Bool, scaleFactor: CGFloat = 1, completionHandler: @escaping ()->() = {}) {

    // TODO: Customize completion handler if needed
    let handler: CompletionHandler = { (image: Image?, error: NSError?, cacheType: CacheType, imageURL: URL?) -> Void in
        completionHandler()
    }

    //Use SDWebImage for webP images
    if urlString.lowercased().contains("webp") {
        self.webPImageFromUrl(urlString)
        return
    }

    let downloader = KingfisherManager.shared.downloader
    guard let imageUrl = URL(string: urlString.trim()) else {
        return
    }

    // requestModifier will be called before image download request made.

    if isSecure {
         let modifier = AnyModifier { request in
            var r = request
            r.setValue(User.me?.transmitToken, forHTTPHeaderField: "Token")
            return r
        }

        self.kf.setImage(with: imageUrl, placeholder: nil, options: [.downloader(downloader), .requestModifier(modifier), .scaleFactor(scaleFactor)], progressBlock: nil, completionHandler: handler)
    }

    self.kf.setImage(with: imageUrl, placeholder: nil, options: [.downloader(downloader), .scaleFactor(scaleFactor)], progressBlock: nil, completionHandler: handler)
}

Как видите, мы используете Kingfisher и SDWebImage, а также изображение из FireBase.

Тот же код, что и выше, используется в Firebase SDK 4.0.0 и более поздних версиях. это в FireBase новый SDK?

...