您的位置:首页 > 移动开发

Android app的文件缓存目录

2015-11-20 19:03 453 查看


内置私有目录

/data/data/[packagename]/files 文件缓存目录,一般存小的文件缓存,如果是图片,不建议放这里,一般放到外置卡。

File file = getFilesDir(); 返回该目录 

写文件到该目录下可以像这样
FileOutputStream fos = null;
try {
fos = appontext.openFileOutput(name, Context.MODE_PRIVATE);
fos.write(content.getBytes());
} catch (Exception e) {
}finally{
try {
if(null != fos){
fos.close();
}
}catch (Exception e) {
}
}


/data/data/[packagename]/cache目录,存放一些其他缓存 File cache = getCacheDir();

/data/data/[packagename]/databases,存放数据库

/data/data/[packagename]/lib,应用的so目录

/data/data/[packagename]/shared_prefs 应用的SharedPreferences保存

可以自己创建其他目录吗? 可以的 

使用 File ownDataPath = getDir(“service”,Context.MODE_PRIVATE); 

使用它可以创建app_service目录,放什么自己定义

下面是获取缓存目录方法:

File cacheDir = getCacheDir();//文件所在目录为getFilesDir();

String cachePath=cacheDir.getPath();

 

获取的目录默认没有最后的”/”,需要自己加上


外置SDCARD目录

外置缓存目录(File sdcache = getExternalCacheDir();) 

/storage/emulated/0/Android/data/[packagename]/cache 

一些重要性不高的cache或者大文件放到这里,比如图片缓存

外置文件缓存目录(File sdfile = getExternalFilesDir(null);), 

/storage/emulated/0/Android/data/[packagename]/files 

一些重要性不高的file cache或者大文件放到这里 

注意: /storage/emulated/0/Android/data/[packagename] 在android2.2之后,在应用卸载后也会一并卸载。所以不需要用什么清理缓存的软件清理的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: