Android中文件存储笔记

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存储规范。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值