Android WebView 保存cache至External Storage

时间:2023-03-09 13:28:16
Android WebView 保存cache至External Storage

源博客: http://www.devahead.com/blog/2012/01/saving-the-android-webview-cache-on-the-sd-card/

其中心思想是,通过在Activity层级override getCacheDir()方法,来间接改变WebView获取cache目录得到的结果;

getCacheDir() 与 getFilesDir()在保存缓存(文件)时常常用到,其默认返回的结果为/data/data/包名/cache(files),

但是这可能会非常占用Internal Storage,而且在Internal Storage紧张时,会自动清除cache目录中的内容.

至此,考虑将文件保存在External Strorage中,成为一种可行的方案;

两种位置:

  1. /sdcard/Android/data/包名/cache(files)

    与 /data/data/包名/cache(files) 类似,仅仅是移到了External Storage,在应用管理中清除缓存,将干掉对应文件目录及内容,卸载应用时系统会自动清除;

  2. /sdcard/自定义目录

    除非在文件管理中手动操作删除,否则将会一直存在;

根据不同需求选择吧;