AndroidWebView设置缓存方式

本文介绍了Android中WebView的两种缓存方式:网页数据缓存和AppCache。详细解释了不同缓存模式的工作原理,包括如何设置缓存路径、启用缓存、控制缓存大小及清除缓存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android 中WebView中能设置的缓存方式有两种:

一.网页数据缓存

1.WebSettings可设置缓存方式

LOAD_DEFAULT:默认设置,当有缓存而且没有过期使用缓存,否则使用网络数据。

LOAD_CACHE_ELSE_NETWORK:只要有缓存就使用缓存,即使已经过期,否则使用网络数据。

LOAD_NO_CACHE:不适用缓存,只加载网络数据。

LOAD_CACHE_ONLY:不使用网络,只使用缓存数据。

方法调用:

webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);


二. AppCache

查阅相关资料,总结如下:

AppCache简介:对app内存缓存的方案,具体表现为当请求某个文件时不是从网络获取该文件,而是从本地获取。

AppCache的好处:离线浏览 ,速度 - 已缓存资源加载得更快,减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源。
在WebView中使用相关api

1、缓存构成
根据setAppCachePath(String appCachePath)提供的路径,在H5使用缓存过程中生成的缓存文件。


2、缓存模式

无模式选择,通过setAppCacheEnabled(boolean flag)设置是否打开。默认关闭,即,H5的缓存无法使用。


3、清除缓存

找到调用setAppCachePath(String appCachePath)设置缓存的路径,把它下面的文件全部删除就OK了。


4、控制大小

通过setAppCacheMaxSize(long appCacheMaxSize)设置缓存最大容量,默认为Max Integer。
同时,可能通过覆盖WebChromeClient.onReachedMaxAppCacheSize(long requiredStorage, long quota, WebStorage.QuotaUpdater quotaUpdater)来设置缓存超过先前设置的最大容量时的策略。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值