数据

搞懂Android内部存储和外部存储

2017-07-29  本文已影响10人  liaowenhao

1. 内部存储和外部存储

  1. 版本变化
    Android4.4以前,内置存储就是内部存储,外置SD卡就是外置存储。
    Android4.4以后手机将机身存储ROM在概念上分为了内部存储(internal)和外部存储(external),内部存储不是内存,SharedPreference和SQLite都是存储在内部存储空间上的。

  2. 文件目录
    /data目录下的文件物理上存放在我们通常所说的内部存储里面
    /storage目录下的文件物理上存放在我们通常所说的外部存储里面
    /system用于存放系统文件,/cache用于存放一些缓存文件,物理上它们也是存放在内部存储里面的
    Android设备的图片缓存分两种,一种是内存缓存,图片缓存在设备的内存中,一种是外部缓存,图片缓存在磁盘上,磁盘可以是内部的存储空间也可以是外部的sd卡。
    参考

  3. 访问API
    3.1 访问内部存储的API
    Envionment.getDataDirectory()= /data //内部存储的根路径
    getFilesDir().getAbsolutePath();
    getCacheDir().getAbsolutePath()= /data/user/0/packname/cache
    //获取应用在内部存储中的cache路径
    getDir("myFile", MODE_PRIVETE).getAbsolutePath();
    3.2 访问外部存储的API
    Environment.getExternalStorageDirectory().getAbsolutePath() = /storage/emulated/0 //外部存储的根路径
    Environment.getExternalStoragePublicDirectory(“”).getAbsolutePath()
    getExternalFilesDir(“”).getAbsolutePath() = /storage/emulated/0/Android/data/packname/files
    获取应用在外部存储中的files路径
    getExternalCacheDir().getAbsolutePath() = /storage/emulated/0/Android/data/packname/cache
    获取应用在外部存储中的cache路径

上一篇 下一篇

猜你喜欢

热点阅读