Android 存储路径
前言
这周实现了从蓝牙录音笔读取录音文件保存到手机功能,涉及到Android存储目录的选择,借此研究了一下存储目录结构。
Android存储目录思维导图如下:
内部存储
内部存储的文件只能被对应的应用访问,删除应用对应目录下的文件会被删除。对于这个内部目录,用户是无法访问的,除非获取root权限。
- 内部存储路径获取
// data/data/packagename/files
String fileDir = context.getFilesDir().getAbsolutePath();
// data/data/packagename/xxx/cache
String cacheDir = context.getCacheDir().getAbsolutePath();
小米和华为的内部存储路径特殊为:data/user/0/packagename/files 和 data/user/0/packagename/cache。
后者而言,该目录内的文件在设备内存不足时会优先被删除掉,所以存放在这里的文件是没有任何保障的。
外部存储
针对于外部存储比较容易混淆,因为在Android4.4以前,手机机身存储就叫内部存储,插入的SD卡就是外部存储,但是在Android4.4以后的话,就目前而言,现在的手机