/**
* * 清除外部cache下的内容(/mnt/sdcard/android/data/com.xxx.xxx/cache) * * @param
* context
*/
public static void cleanExternalCache(Context context) {
if (Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED)) {
deleteFilesByDirectory(context.getExternalCacheDir());
}
}
最后怎么获取这些数据的大小呢?贴上源码:
/**
* 获取文件夹大小
* @param file File实例
* @return long
*/
public static long getFolderSize(java.io.File file){
long size = 0;
try {
java.io.File[] fileList = file.listFiles();
for (int i = 0; i < fileList.length; i++)
{
if (fileList[i].isDirectory())
{
size = size + getFolderSize(fileList[i]);
}else{
size = size + fileList[i].length();
}
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//return size/1048576;
return size;
}
主要就是遍历文件夹,获取文件夹中的文件的大小,获取缓存大小。如果应用内的一些缓存图片不希望被删除,还是将缓存的图片放到指定的文件夹中,删除的时候不要删除该文件夹,这样就不会因为清空缓存而重新加载图片了。
以上就是关于Android清空应用内部文件缓存方法的详细介绍,希望对大家的学习有所帮助。
注:相关教程知识阅读请移步到Android开发频道。










