因为使用的SDWebImage进行缓存图片。
1:导入类库
#import "SDImageCache.h"
#import "SDWebImageManager.h"
2:当前缓存大小
#pragma mark - 检查当前缓存大小
-(CGFloat)getCacheSize
{
//获取Caches目录路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
diskCachePath = [paths objectAtIndex:0];
[SDWebImageManager.sharedManager.imageCache
calculateSizeWithCompletionBlock:^(NSUInteger fileCount, NSUInteger totalSize) {
//获取缓存大小
cacheSize = totalSize/(1024.0*1024.0);
[self.setTableView reloadData];
}];
return cacheSize;
}
3:清理缓存图片
#pragma mark - 清理缓存图片
//删除图片缓存
- (void)cleanCache {
//未设置过
[[[SDWebImageManager sharedManager] imageCache] clearDisk];
[[[SDWebImageManager sharedManager] imageCache] clearMemory];
[[NSURLCache sharedURLCache] removeAllCachedResponses];
//清除启动动画图片
[self clearStartAnimationImage];
[SDWebImageManager.sharedManager.imageCache
calculateSizeWithCompletionBlock:^(NSUInteger fileCount, NSUInteger totalSize) {
cacheSize = totalSize/(1024.0*1024.0);
[self.setTableView reloadData];
}];
}
//清除启动动画图片
-(void)clearStartAnimationImage
{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
// NSString *needstr=[defaults objectForKey:@"start_image_name"];
[defaults removeObjectForKey:@"start_image_name"];
[defaults synchronize];
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
NSString* pathDisk = [documentPath stringByAppendingPathComponent:@"Hna_StartImages"];
NSFileManager *fileManager=[NSFileManager defaultManager];
NSArray *contentArray=[fileManager contentsOfDirectoryAtPath:pathDisk error:nil];
NSEnumerator *e = [contentArray objectEnumerator];
NSString *filename;
while ((filename = [e nextObject])) {
[fileManager removeItemAtPath:[pathDisk stringByAppendingPathComponent:filename] error:NULL];
}
}