Android中文件存储笔记
2016-03-23 19:29
316 查看
Android中文件存储笔记
在Android文件存储中,分为两类,一类是APP内部的存储如:有/data/data/[Package_Name]下的File,Cache目录;一类是SD卡,和手机本身的存储空间的存储。通常情况下,具有权限,或者不希望用户通过APP外的方式修改的数据,可以存在APP内部,如果是共享,或者没有权限的存储,可以直接写在SD卡内。
先介绍APP内部存储的使用方法
内部Cache
每一个APP的目录内,都有一个cache文件夹,完整路径为/data/data/[Package_Name]/cache,里面存储一些缓存文件。*这里面的文件在APP卸载的时候会被删除,在手机中的应用程序管理器,有个“清除缓存”功能,就是清除这个cache的所有文件。
获取目录的方法
context.getCacheDir(); // 获取APP安装路径内部的Cache存储目录(需要Root才可见)
外部Cache
手机自带的存储,就是我们所说的16G,64G等,还有的手机支持存储卡,统称为外部存储,Android提供了我们在外部存储中获得一个路径来保存较大较多的Cache。
获取目录的方法
context.getExternalCacheDir(); // 如果手机没有外部存储则为空
内部File
在/data/data/[Package_Name]/中,还有一个Files的文件夹,供我们存储不想被用户或其他APP访问的文件*这里面的文件在APP卸载的时候会被删除,在手机中的应用程序管理器,有个“清除数据”功能,就是清除这个Files的所有文件。
获取目录的方法
context.getFilesDir(); // 获取APP安装路径内部的File存储目录(需要Root才可见)
外部File
同外部的Cache位于同一目录下
获取目录的方法
/** * String type的取值 * {@link android.os.Environment#DIRECTORY_MUSIC}, * {@link android.os.Environment#DIRECTORY_PODCASTS}, * {@link android.os.Environment#DIRECTORY_RINGTONES}, * {@link android.os.Environment#DIRECTORY_ALARMS}, * {@link android.os.Environment#DIRECTORY_NOTIFICATIONS}, * {@link android.os.Environment#DIRECTORY_PICTURES}, or * {@link android.os.Environment#DIRECTORY_MOVIES}. */ context.getExternalFilesDir(String type); // 如果手机没有外部存储则为空
可以看到,如果想保存不同类型的文件,占用空间比较大,而且内容不敏感,可以对外可见,就应该选择外部的File存储目录。
希望以后在开发中可以规范的使用Android存储规范。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories