如何在使用cacheMaxCacheAge时更改静态值SDWebImage?什么方法是好的?我需要缓存图像5分钟。
发布于 2019-04-05 13:16:29
在SDWebImage 5.0+ maxCacheAge中更名为maxDiskAge。您可以像这样以秒为单位设置最大缓存时间。
Objetive-c
[SDImageCache sharedImageCache].config.maxDiskAge = 60 * 5; //5 minutesSwift 4+
SDImageCache.shared.config.maxDiskAge = 60 * 5 //5 minutes参考链接:https://github.com/SDWebImage/SDWebImage/wiki/5.0-Migration-guide
发布于 2018-05-18 13:02:56
SDWebImage提供了maxCacheAge属性来设置以秒为单位的最大缓存时间。我们可以使用共享实例方法访问此属性。
[SDImageCache sharedImageCache].config.maxCacheAge = 60 * 5; //5 minutes发布于 2022-09-06 11:46:43
SWIFT 5+,SDWebImage 5.13 +,tvOS15+和其他平台
我发现,在用maxDiskAge存储图像时,仅仅在tvOS 15+上设置新的SDImageCache.shared.store属性是不够的,但是您确实需要手动删除带有deleteOldFiles()函数的旧缓存。这种情况发生在我的例子中,尽管旧缓存删除的执行据称是由库本身在终止应用程序as specified in following SO post之后完成的。这可能只是tvOS的情况,但我不完全确定这个问题是否也存在于另一个平台上。以下是对我有效的解决方案:
删除过期缓存:
SDImageCache.shared.deleteOldFiles()设置以秒为单位的最大缓存磁盘时间:
SDImageCache.shared.config.maxDiskAge = 100000将图像存储到磁盘:
SDImageCache.shared.store(image, forKey: key, toDisk: true)https://stackoverflow.com/questions/28549211
复制相似问题