ios - 使用 SDWebImage 和 FirebaseStorageUI 删除缓存 URL

标签 ios swift firebase swift3 firebase-storage

我正在使用 FirebaseStorageUI 在我的 iOS 项目中使用 Firebase 下载图像。一切都很完美,直到没有关于我遇到的问题的文档。

我通常使用这个来清除 SDWebImage 对一个特定 url 的缓存:

SDImageCache.shared().removeImage(forKey: "value", fromDisk: true, withCompletion: nil)

但是,对于 Firebase,只有 FIRStorageReference 对象用于检索图像,因此我看到成功完成我想要的唯一方法是执行此操作:

ref.downloadURL { (url, error) in
    // code  
}

这是一项非常繁琐的工作,因为我已经有大量闭包来仅处理与 Firebase 的交互。这是清除缓存的唯一方法吗?

最佳答案

我建议您使用 Kingfisher反而。它带有 UIImageView 的扩展,可简化从 url 下载图像的过程。

let url = URL(string: "image_url")
imageView.kf.setImage(with: url)

手动清除 Kingfisher 使用的图像缓存:

ImageCache.default.clearDiskCache()

关于ios - 使用 SDWebImage 和 FirebaseStorageUI 删除缓存 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45399586/

相关文章:

ios - 获取 Today-Extension 中通知中心的宽度

ios - gomobile build app可以上appstore吗

ios - 如何在ios导航栏的中心获得两个按钮

ios - 没有事件和启用的视频连接

swift - 在这种情况下如何在闭包中正确传递谓词?

android - 如何在 Firebase 中检索根节点下子节点的计数

android - 从 Firebase 检索数据时协程流错误

ios - 访问在 alertController 中声明的变量

iOS:使用自定义形状模糊

android - 如何防止某些数据在 Firebase 中同步?