activemq 持久化文件超大_Android数据持久化文件路径详解

Android磁盘存储可以分为两类,内部存储和外部存储。

内部存储:内部存储不是内存,是位于系统磁盘中一个独特的位置。/data/文件夹就是内部存储,内部存储中一般存储一些应用数据,如apk,sharedpreference,database数据,webView缓存和图片缓存等。内部存储中还有一个文件夹,每个应用都有一个,里面中的数据在应用卸载之后就会删除。结构如:/data/data/你的应用报名/。其次还有一个/data/app/的文件夹,这里面存储着我们手机上安装的apk文件。

特点:

内部存储的文件和目录只能被我们的app自己访问,别的app不能访问。

内部存储中的私有目录,当用户卸载app之后,该文件目录中关于该应用的信息就会被删除。

内部存储是可用的。

内部存储大小有限,不适合存储大量数据。

只有root的手机,才能从手机文件管理器看见,否则都是隐藏的。

e0c3888c008ed3f3928bb0009ab783ed.png

1588689170(1).png

eg:
/data/user/0/com.yppcat.test/files
Context.getFilesDir().getAbsolutePath()

/data/user/0/com.yppcat.test/cache
Context.getCacheDir().getAbsolutePath()

/data/user/0/com.yppcat.test
Context.getDataDir().getAbsolutePath()

外部存储:外部存储并不是指拓展的sd卡,不管有无外接设备,每个Android手机都有外部存储。

一般的mnt或者storage目录。外部存储中分两类目录,私有目录和公有目录,私有目录的数据会随着应用的卸载而删除,公有目录不会。

特点:

公有目录任何程序都可以访问,私有目录自身可以访问。

并不一定是可用的,因为SD卡会被挂载。

外部存储中的私有目录中的数据会随着应用的卸载而删除,而公有目录不会。

私有目录:

外部存储中的私有目录是不会主动创建的,需要我们自己创建,私有目录应用本身无需申请动态权限,就能直接访问。我们可以在私有目录下创建我们自己的文件夹:

  • getExternalFilesDir(“files目录的子目录名称”)

获取应用私有目录files目录中的文件目录(storage/emulated/0/Android/data/包名/files/子目录)
eg:
/storage/emulated/0/Android/data/com.yppcat.test/cache
Context.getExternalCacheDir().getAbsolutePath()

  • getExternalCacheDir()

获取应用cache目录(/storage/emulated/0/Android/data/包名/cache)

公有目录:

公有目录是任何程序都可以

获取方式:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC).getAbsolutePath()
下面类似

DIRECTORY_MUSIC
音乐/storage/emulated/0/Music

DIRECTORY_PODCASTS
播客/storage/emulated/0/Podcasts

DIRECTORY_RINGTONES
来点铃声

DIRECTORY_ALARMS
闹钟/storage/emulated/0/Alarms

DIRECTORY_NOTIFICATIONS
通知/storage/emulated/0/Notifications

DIRECTORY_PICTURES
图片/storage/emulated/0/Pictures

DIRECTORY_MOVIES
电影/storage/emulated/0/Movies

DIRECTORY_DOWNLOADS
下载文件存储路径/storage/emulated/0/Download

DIRECTORY_DCIM
媒体文件/storage/emulated/0/DCIM

DIRECTORY_DOCUMENTS
文档/storage/emulated/0/Documents

我们通过Environment.getExternalStoragePublicDirectory()来获取这些目录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值