iOS项目里面如何清理缓存

时间:2023-03-09 02:31:08
iOS项目里面如何清理缓存

在正式讲解以前,请先看一下以下图片,在以下这款APP种设有清理缓存,开始我以为很复杂,在弄明白之后,其实就是几句代码就解决了。

iOS项目里面如何清理缓存  iOS项目里面如何清理缓存  iOS项目里面如何清理缓存

在实际项目开发中,我们很多的文件都会缓存在沙盒里面,比如:照片。所以设置有清理缓存按钮可以为APP瘦身。也就是说,清理缓存实践上就是清理沙盒目录里面的文件。

具体怎么实现请看代码:

  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//沙盒的Document目录
NSString *path = [paths objectAtIndex:];
NSLog(@"%@",path);//输出沙盒路径
NSFileManager *filemanger = [NSFileManager defaultManager];//创建文件管理器
[filemanger removeItemAtPath:path error:nil];//删除路径里面的文件

开始我以为上面写的缓存大小是真的,可是看了代码才知道。。。

 //    获取文件路径
cachPath= [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask, YES) objectAtIndex:]; files= [[NSFileManager defaultManager] subpathsAtPath:cachPath]; caches=[NSString stringWithFormat:@"缓存大小为%0.2fM,您确定要清理吗",(float)([files count])/];

从代码容易看出它是用文件个数除以30来输出的缓存大小