问题:随着App的不断运行,发现所占磁盘空间越来越大
分析:应该是网络下载中的缓存,包括利用SDWebImage产生的、和下载单个文件被取消后的缓存
验证:查看App目录中的Tmp(系统存放未下载完成的文件的缓存的地方),cache(SDWebImage 存放缓存的地方)
如上图,下载文件缓存有374M;如下图,SDWebImageCache有20M
最后附上检测文件大小的方法
- (float ) folderSizeAtPath:(NSString*) folderPath{ NSFileManager* manager = [NSFileManager defaultManager]; if (![manager fileExistsAtPath:folderPath]) return 0; NSEnumerator *childFilesEnumerator = [[manager subpathsAtPath:folderPath] objectEnumerator]; NSString* fileName; long long folderSize = 0; while ((fileName = [childFilesEnumerator nextObject]) != nil){ NSString* fileAbsolutePath = [folderPath stringByAppendingPathComponent:fileName]; folderSize += [self fileSizeAtPath:fileAbsolutePath]; } return folderSize/(1024.0*1024.0); } - (NSString *)TmpPathDirectory { return NSTemporaryDirectory(); } - (NSString *)cachePathDirectory { NSArray*paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES); NSString *path = [paths objectAtIndex:0]; return path; }
时间: 2024-09-30 07:24:26