问题:随着App的不断运行,发现所占磁盘空间越来越大

分析:应该是网络下载中的缓存,包括利用SDWebImage产生的、和下载单个文件被取消后的缓存

验证:查看App目录中的Tmp(系统存放未下载完成的文件的缓存的地方),cache(SDWebImage 存放缓存的地方)

iOS App占用太多磁盘空间

如上图,下载文件缓存有374M;如下图,SDWebImageCache有20M

iOS App占用太多磁盘空间

最后附上检测文件大小的方法

- (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;
}

 

相关文章:

  • 2022-02-01
  • 2022-01-03
  • 2022-01-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-30
  • 2022-01-27
猜你喜欢
  • 2022-12-23
  • 2021-12-12
  • 2021-11-17
  • 2021-09-22
  • 2021-07-22
  • 2021-12-12
  • 2021-08-17
相关资源
相似解决方案