http://blog.csdn.net/androidwifi/article/details/17725989/
http://www.androidchina.net/4106.html
想要搞清楚Android的存储目录,知道什么时候该存储在哪里,该调用什么api,首先我们必须要搞清楚一些概念,知道什么是内部存储、外部存储、扩展卡,私有目录、公有目录。外部存储不全是公有目录,也不是特指扩展sd卡。

内部存储

内部存储位于系统中很特殊的一个位置,如果你想将文件存储名内部存储中,那么文件将保在/data/data/你的包名/之下。当一个应用卸载之后,内部存储中的这些文件也被删除。从技术上来讲如果你在创建内部存储文件的时候将文件属性设置成可读,其他app能够访问自己应用的数据,前提是他知道你这个应用的包名,如果一个文件的属性是私有(private),那么即使知道包名其他应用也无法访问。 内部存储空间十分有限,因而显得可贵,另外,它也是系统本身和系统应用程序主要的数据存储所在地,一旦内部存储空间耗尽,手机也就无法使用了。所以对于内部存储空间,我们要尽量避免使用。Shared Preferences和SQLite数据库都是存储在内部存储空间上的。内部存储一般用Context来获取和操作。

存储空间操作

下图是Android 获取目录的api 对应目录路径

api path
context.getFilesDir() /data/data/com.example.ttttt/files
context.getCacheDir() /data/data/com.example.ttttt/cache
context.getDir(“test”, MODE_PRIVATE) /data/data/com.example.ttttt/app_test
context.getDatabasePath(“test”) /data/data/com.example.ttttt/databases/test
context.getFileStreamPath(“test”) /data/data/com.example.ttttt/files/test
context.getExternalCacheDir() /mnt/sdcard/Android/data/com.example.ttttt/cache
context.getExternalFilesDir(Environment.DIRECTORY_MUSIC) /mnt/sdcard/Android/data/com.example.ttttt/files/Music
Environment.getDataDirectory() /data
Environment.getDownloadCacheDirectory() /cache
Environment.getExternalStorageDirectory() /mnt/sdcard
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC) /mnt/sdcard/Music

com.example.ttttt是我测试的包名

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  3. 读取android手机流量信息
  4. android 使用html5作布局文件: webview跟javascript交互
  5. Android(安卓)多媒体扫描过程(Android(安卓)Media Scanner Proces
  6. android“设置”里的版本号
  7. Android开发环境搭建
  8. Android(安卓)Resource介绍和使用
  9. 2014.01.21 ——— android 关联android-support源码

随机推荐

  1. 计量院士首次用DID方法分析, 中国封城对
  2. “老司机”成长之路:自动驾驶车辆调试实践
  3. 自动驾驶多传感器感知的探索
  4. 01-开发工具安装配置与HTML文档结构
  5. 「公众号吸粉神级插件」实现网站下载文件
  6. C语言实现乘法口诀表
  7. 如何从 0 到 1 构建个性化推荐?
  8. 打造最可靠的自动驾驶基础架构
  9. 实时计算引擎在贝壳的应用与实践
  10. “RDD女王”获2020年小诺奖!她的RD数据,