一般状况下多数应用程序都会将缓存的位置选择为 /sdcard/Android/data/<application package>/cache 这个路径。
选择在这个位置有两点好处:
第一,这是存储在SD卡上的,所以即便缓存再多的数据也不会对手机的内置存储空间有任何影响只要SD卡空间足够就行。
第二,这个路径被Android系统认定为应用程序的缓存路径,当程序被卸载的时候,这里的数据也会一块儿被清除掉,这样就不会出现删除程序以后手机上还有不少残留数据的问题。
//路径例如: /SD卡/Android/data/程序的包名/cache/uniqueName private static File getDiskCacheDir(Context context, String uniqueName) { String cachePath; if (Environment.MEDIA_MOUNTED.equals(Environment .getExternalStorageState()) || !Environment.isExternalStorageRemovable()) { cachePath = context.getExternalCacheDir().getPath(); } else { cachePath = context.getCacheDir().getPath(); } return new File(cachePath + File.separator + uniqueName); }