iOS开清理缓存
2016-09-09 10:14
162 查看
NSArray *paths =
NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,
NSUserDomainMask,
YES);
NSString *path = [paths
lastObject];
NSString *str = [NSString
stringWithFormat:@"缓存已清除%.1fM",
[self folderSizeAtPath:path]];
[self
clearCacheSuccess:str];
dispatch_async(
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,
0)
, ^{
NSString *cachPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,
NSUserDomainMask,
YES) objectAtIndex:0];
NSArray *files = [[NSFileManager
defaultManager] subpathsAtPath:cachPath];
for (NSString *p
in files) {
NSError *error;
NSString *path = [cachPath
stringByAppendingPathComponent:p];
if ([[NSFileManager
defaultManager] fileExistsAtPath:path]) {
[[NSFileManager
defaultManager] removeItemAtPath:path
error:&error];
}
}
[self
performSelectorOnMainThread:@selector(clearCacheSuccess:)
withObject:nil
waitUntilDone:YES];});
NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,
NSUserDomainMask,
YES);
NSString *path = [paths
lastObject];
NSString *str = [NSString
stringWithFormat:@"缓存已清除%.1fM",
[self folderSizeAtPath:path]];
[self
clearCacheSuccess:str];
dispatch_async(
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,
0)
, ^{
NSString *cachPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,
NSUserDomainMask,
YES) objectAtIndex:0];
NSArray *files = [[NSFileManager
defaultManager] subpathsAtPath:cachPath];
for (NSString *p
in files) {
NSError *error;
NSString *path = [cachPath
stringByAppendingPathComponent:p];
if ([[NSFileManager
defaultManager] fileExistsAtPath:path]) {
[[NSFileManager
defaultManager] removeItemAtPath:path
error:&error];
}
}
[self
performSelectorOnMainThread:@selector(clearCacheSuccess:)
withObject:nil
waitUntilDone:YES];});