Smile Eyes之博客

张开嘴四处嚷嚷只是人的本能,闭上嘴巴用心思考才需要人的智慧

android webview 设置缓存的相关操作

今天获取webview页面,要使其在断网情况下也可显示,那么只能使用其缓存机制,webview的缓存相关设置在代码中如下:

WebSettings websetting = webview.getSettings();

websetting.setJavaScriptEnabled(true);   //与JS交互

websetting.setDomStorageEnabled(true);    //开启DOM形式存储

websetting.setDatabaseEnabled(true);   //开启数据库形式存储

String appCacheDir = this.getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath();   //缓存数据的存储地址

websetting.setAppCachePath(appCacheDir);

websetting.setAppCacheEnabled(true);  //开启缓存功能

websetting.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);      //缓存模式

websetting.setAllowFileAccess(true);

websetting.setAppCacheMaxSize(size);      //设置缓存文件大小,但现在已不再提倡这个方法

关于缓存模式,有五种,根据不同需求可以进行设置:

LOAD_CACHE_ONLY:  不使用网络,只读取本地缓存数据

LOAD_DEFAULT:  根据cache-control决定是否从网络上取数据。

LOAD_CACHE_NORMAL: API level 17中已经废弃, 从API level 11开始作用同LOAD_DEFAULT模式

LOAD_NO_CACHE: 不使用缓存,只从网络获取数据.

LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存中的数据。


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011325156/article/details/49641149
文章标签: webview 缓存 android
个人分类: android知识总结
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭