• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 我们可以将本地镜像设置为 SDWebImage 的离线图像吗?

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:41:52 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在使用

pod 'SDWebImage'

要在我的应用程序中下载图像,我发现所有图像都下载到 “/Library/Caches/com.bundlename.bundlename/com.alamofire.imagedownloader/fsCachedData” 具有一些独特的名称。

我的应用程序具有离线支持,并且我已经使用文件路径(文件位于库缓存目录中)管理图像的 CoreData 实体,当我上传我的图像时,我的服务器将响应我的 S3 文件 URL 以供下载。

因为我(上传文件的用户)已经有一个图像文件,但 SDWebImage 不知道。所以它会再次下载文件。

有什么建议我应该怎么做才能在不再次下载相同图像的情况下对其进行管理?我无法在数据库中保留本地路径,因为我的应用具有与多个设备的同步功能。

谢谢



Best Answer-推荐答案


我认为您可以为此目的使用 SDImageCache。 示例代码:

NSArray<NSString*> *urls = @"aws s3 url here";
    [[SDImageCache sharedImageCache] diskImageExistsWithKey:urls[0] completion:^(BOOL isInCache) {
        if ( isInCache ) {
            [yourImage setImage:[[SDImageCache sharedImageCache] imageFromDiskCacheForKey:urls[0]]];
        } else {
            NSURL *url = [NSURL URLWithString:item.url];
            [yourImage sd_setImageWithURL:url completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
                [[SDImageCache sharedImageCache] storeImage:image forKey:urls[0] toDisk:YES completion:^{

                }];
                [yourImage setImage:image];
            }];
        }
    }] ;

关于ios - 我们可以将本地镜像设置为 SDWebImage 的离线图像吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44062389/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap