一、获取版本号
NSDictionary*infoDic=[[NSBundle mainBundle] infoDictionary];
NSString*versionStr=[NSString stringWithFormat:@"V%@",[infoDic objectForKey:@"CFBundleVersion"]];
二.清除缓存1. 获取缓存大小
NSString*cachePath=[NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask,YES) objectAtIndex:0];
CGFloat cacheNum=[self folderSizeAtPath:cachePath];
NSString*cacheStr=[NSString stringWithFormat:@"%.2fM",cacheNum];
//...
//单个文件的大小
-(long long)fileSizeAtPath:(NSString*) filePath{
NSFileManager*manager=[NSFileManager defaultManager];
if ([manager fileExistsAtPath:filePath]) {
return [[manager attributesOfItemAtPath:filePath error:nil] fileSize];
}
return 0;
}
//遍历文件夹获得文件夹大小,返回多少M
- (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];
}
NSLog(@"folderSize:%f",folderSize/(1024.0*1024.0));
return folderSize/(1024.0*1024.0);
}
-(void)clearMyCache
{
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];
}
}
});
}