Android 存储目录

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 对应目录路径

Android 存储目录_第1张图片

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是我测试的包名

你可能感兴趣的:(Android,路径)