Android 获取缓存文件的目录,文件的目录,外部存储的目录

本文详细介绍了Android中获取缓存和文件目录的方法,包括getCacheDir()、getFilesDir()、getExternalFilesDir()和getExternalCacheDir()。这些方法帮助开发者在应用卸载时清理相关数据,避免SD卡上留下垃圾文件。getCacheDir()用于内部缓存,getFilesDir()用于内部文件,getExternalFilesDir()和getExternalCacheDir()则指向外部存储的特定目录,与应用卸载相关联。
摘要由CSDN通过智能技术生成

getCacheDir()、getFilesDir()、getExternalFilesDir()、getExternalCacheDir()的作用

一.getCacheDir、getCacheDir

getCacheDir()方法用于获取/data/data//cache目录
getFilesDir()方法用于获取/data/data//files目录

二.getExternalFilesDir、getExternalCacheDir

应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办呢?

通过Context.getExternalFilesDir()方法可以获取到 SDCard/Android/data/你的应用的包名/files/ 目录,一般放一些长时间保存的数据
通过Context.getExternalCacheDir()方法可以获取到 SDCard/Android/data/你的应用包名/cache/目录,一般存放临时缓存数据.如果使用上面的方法,当你的应用在被用户卸载后,SDCard/Android/data/你的应用的包名/ 这个目录下的所有文件都会被删除,不会留下垃圾信息。

而且上面二个目录分别对应 设置->应用->应用详情里面的”清除数据“与”清除缓存“选项
如果要保存下载的内容,就不要放在以上目录下

较优秀的程序都会专门写一个方法来获取缓存地址,如下所示:


public String getDiskCacheDir(Context context) {  
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值