SDWebImage源码解读

最近更新私有库SDWebImage,又重读了一遍,所以分享一下

1.核心方法在于SDWebImageManager的loadImageWithURL(无论UI系列,还是下载最终会走到此方法)

内部,进行判断是否有缓存图片,先取缓存,再取硬盘;若无,则进行下载downloadImageWithURL;

创建operation(可以使用自定义的,需要遵守协议),添加进downloadQueue;

下载成功保存起来storeImage,并回调completionBlock;

2.dispatch_group_t,SDWebImageManager通过context进行传递;

3.operation使用NSURLSession实现,并使用后台进程beginBackgroundTaskWithExpirationHandler;

4.证书处理使用session代理方法didReceiveChallenge实现。

你可能感兴趣的:(SDWebImage源码解读)