Android app的文件缓存目录

##Android app的文件缓存目录能够是app内置私有的目录,固然也能够选择外置sdcard目录java

###内置私有目录android

  1. /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) {
			}
		}
  1. /data/data/[packagename]/cache目录,存放一些其余缓存 File cache = getCacheDir();app

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

  3. /data/data/[packagename]/lib,应用的so目录图片

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

能够本身建立其余目录吗? 能够的 使用 File ownDataPath = getDir("service",Context.MODE_PRIVATE); 使用它能够建立app_service目录,放什么本身定义it

###外置SDCARD目录io

  1. 外置缓存目录(File sdcache = getExternalCacheDir();) /storage/emulated/0/Android/data/[packagename]/cache 一些重要性不高的cache或者大文件放到这里,好比图片缓存

  2. 外置文件缓存目录(File sdfile = getExternalFilesDir(null);), /storage/emulated/0/Android/data/[packagename]/files 一些重要性不高的file cache或者大文件放到这里 注意: /storage/emulated/0/Android/data/[packagename] 在android2.2以后,在应用卸载后也会一并卸载。因此不须要用什么清理缓存的软件清理的。

###PS: 如今手机支持外置挂载T卡的,如何访问外置T卡目录呢?

  1. 能够参考 !http://stackoverflow.com/questions/5694933/find-an-external-sd-card-location
相关文章
相关标签/搜索