记:getExternalCacheDir与getCacheDir的区别

getCacheDir

  getCacheDir()其对应着应用程序内的内部缓存,用来存储临时数据。因此在系统空间较少时有可能会被自动清除。存放路径一般是/data/data/<应用包名>/cache目录。

getExternalCacheDir

  getExternalCacheDir()对应着应用程序内的外部缓存,同样是用来存储临时数据的。但是其由于脱离了应用管理,因此并不会在空间少时被自动清除。存放路径一般是/storage/sdcard/Android/data/<应用包名>/cache目录。

应用卸载

  当用户卸载当前应用程序时,以上两个方法里的内容都会随着应用卸载所清除。若有想要一直保存的内容,可以调用getExternalStorageDirectory目录下(抑或其他sd卡下的目录)进行保存。

  当然,如果想要保存文件数据(长时间保存),上面对应着getFilesDir()和getExternalFilesDir(),类比即可。

笔记

  可以看到,当有External(外存)时,数据都是缓存在sd卡中的(若存在);否则则是内部缓存(可管理)。

你可能感兴趣的:(安卓开发,笔记)