美文网首页
Android 内部存储和外部存储

Android 内部存储和外部存储

作者: feifei_fly | 来源:发表于2018-06-22 14:45 被阅读0次

Android 存储可如下划分:

  • 内部RAM
  • 内部存储:内部ROM
  • 外部存储:外部ROM和Sdcard

内部存储

内部存储位于系统中很特殊的一个位置,如果你想将文件存储于内部存储,那么文件默认只能被你的应用访问到,且一个应用创建的所有文件都在和应用包名相同的目录下。当一个应用卸载之后,内部存储中的这些文件也被删除

内部存储中的两个重要目录:
(1)data/app文件夹。app文件夹里存放着我们所有安装的app的apk文件夹
(2)data/data文件夹,这个文件夹下都是一个包名.

  • data/data/包名/shared_prefs
  • data/data/包名/database
  • data/data/包名/files
  • data/data/包名/cache
    我们在使用SharePerference的时候,将数据持久化存储于本地,其实就是存在这个shared_prefs中的xml文件里,我们的app里边的数据库文件就存储于databases文件夹中,我们的普通数据存储在files中,缓存在cache文件夹中。

外部存储

外部存储就是我们上面看到的storage文件夹,也有可能是mnt文件夹。在storage文件夹中有一个sdcard文件夹。
sdcard这个文件夹中的文件又分为两类,一类是公有目录,还有一类是私有目录。

(1)公有目录有9大类,比如DCIM,Download等这些系统为我们创建的文件夹。

(2)私有目录就是android这个文件夹,这个文件夹打开后里边有一个data文件夹,打开这个文件夹,里面包含了许多包名组成的文件夹。

/sdcard/Android/data/包名/files
/sdcard/Android/data/包名/caches

Google官方建议我们App的数据应该存储在外部存储的私有目录中该App的包名下,这样当用户卸载掉App之后,相关的数据会一并删除

常用目录操作

  • context.getFilesDir() 内部存储data/data/包名/files目录
  • context.getCacheDir() 内部存储data/data/包名/cache目录
  • Environment.getExternalStorageDirectory() 外部存储根目录
  • Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_DCIM) 外部存储公有目录
  • context.getExternalFilesDir() 外部存储私有目录storage/sdcard/Android/data/包名/files
  • context.getExternalCacheDir() 外部存储私有目录storage/sdcard/Android/data/包名/cache

通过Context.getExternalFilesDir()方法可以获取到SDCard/Android/data/你的应用的包名/files/目录,一般放一些长时间保存的数据。

通过Context.getExternalCacheDir()方法可以获取到SDCard/Android/data/你的应用包名/cache/目录,一般存放临时缓存数据。

参考链接:
https://www.jianshu.com/p/31670805f32a

相关文章

  • Android存储及路径

    Android存储及路径 Android手机存储分类 分为:内部存储和外部存储 如何区分内部存储和外部存储:可以从...

  • Android 内部存储和外部存储

    Android 存储可如下划分: 内部RAM 内部存储:内部ROM 外部存储:外部ROM和Sdcard 内部存储 ...

  • Android storage

    Android存储结构android中的文件操作详解以及内部存储和外部存储彻底理解android中的内部存储与外部...

  • android 内部和外部存储

    外部存储和内部存储介绍android手机的存储空间可以分为外部存储和内部存储,内部存储里面的空间比较小,里面的数据...

  • android相关本地存储目录

    android本地存储目录 内部存储 外部存储应用私有目录外部目录 获得内部存储目录 获得外部存储目录 获得外部存...

  • Android五大存储之内部存储

    前序: Android五大存储:内部存储、外部存储、网络存储、SharedPreferences和SQLite ...

  • Android五大存储之外部存储

    前序: Android五大存储:内部存储、外部存储、网络存储、SharedPreferences和SQLite ...

  • Android 与文件相关的知识

    文章出自:android中的文件操作详解以及内部存储和外部存储 内部存储(internal storage) 内部...

  • Android五大存储之SQLite

    前序: Android五大存储:内部存储、外部存储、网络存储、SharedPreferences和SQLite 这...

  • Android五大存储之SharedPreference

    前序: Android五大存储:内部存储、外部存储、网络存储、SharedPreferences和SQLit...

网友评论

      本文标题:Android 内部存储和外部存储

      本文链接:https://www.haomeiwen.com/subject/rkpkyftx.html