当前位置: 移动技术网 > 移动技术>移动开发>Android > Android 存储使用参考

Android 存储使用参考

2020年07月09日  | 移动技术网移动技术  | 我要评论

Android 存储树如下:

    ($rootDir)
+- /data                -> Environment.getDataDirectory()
|   |
|   |   ($appDataDir)
|   +- data/com.srain.cube.sample
|       |
|       |   ($filesDir)
|       +- files            -> Context.getFilesDir() / Context.getFileStreamPath("")
|       |       |
|       |       +- file1    -> Context.getFileStreamPath("file1")
|       |   ($cacheDir)
|       +- cache            -> Context.getCacheDir()
|       |
|       +- app_$name        ->(Context.getDir(String name, int mode)
|
|   ($rootDir)
+- /storage/sdcard0     -> Environment.getExternalStorageDirectory()
    |                       / Environment.getExternalStoragePublicDirectory("")
    |
    +- dir1             -> Environment.getExternalStoragePublicDirectory("dir1")
    |
    |   ($appDataDir)
    +- Andorid/data/com.srain.cube.sample
        |
        |   ($filesDir)
        +- files        -> Context.getExternalFilesDir("")
        |   |
        |   +- file1    -> Context.getExternalFilesDir("file1")
        |   +- Music    -> Context.getExternalFilesDir(Environment.Music);
        |   +- Picture  -> ... Environment.Picture
        |   +- ...
        |
        |   ($cacheDir)
        +- cache        -> Context.getExternalCacheDir()
        |
        +- ???

 

  • 应用数据目录($appDataDir)包含:内部存储路径:/data/data/$packageName 和外部存储路径/sdcard/Android/data/$packageName,在 App被卸载后,会被系统删除,我们应该讲应用的数据存放于这两个目录中,需要用户额外保存的存放到外部存储其他目录中。
  • 在$appDataDir下,一般包含数据缓存($cacheDir)和文件目录($filesDir)两个目录。
  • 机身存储不足时,内部存储的$cacheDir目录下的文件会被删除,外部存储的$cacheDir目录不会
  • 内部存储的$cacheDir和$filesDir文件是App安全的,其他应用无法读取;外部存储的这两个目录则不是,其他应用也可访问
  • 外部存储的$filesDir中的媒体文件不会被当做媒体扫描出来加到媒体库中

本文地址:https://blog.csdn.net/tunmengsmile/article/details/107151637

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网