Webview的Cookie和缓存处理

一、清除Cookie

	//clearCookies
	CookieSyncManager.createInstance(context);
        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.removeAllCookie();

二、删除缓存文件

        //clearCacheFile
        File file = new File(cacheDir);
	if (file != null && file.exists() && file.isDirectory()) {
		for (File item : file.listFiles()) {
			item.delete();
		}
//		file.delete();
	}
        context.deleteDatabase("webview.db");
        context.deleteDatabase("webviewCache.db");

三、只删除和特定url关联的cookie呢

	CookieSyncManager.createInstance(context);
	CookieManager cookieManager = CookieManager.getInstance();
	cookieManager.setAcceptCookie(true);
	cookieManager.removeSessionCookie();//移除cookie
	cookieManager.setCookie(url, cookieString);// 设置cookie
	CookieSyncManager.getInstance().sync();// 同步cookie

//使用setCookie(url, value)将指定url关联的cookie设为空串,只是在已有的基础上继续添加cookie,并不能重置已有的cookie。

时间: 2024-09-17 04:06:00

Webview的Cookie和缓存处理的相关文章

android开发中webview保存cookie问题的解决

最近老是发现在IE里会有Cookie的问题,如IE下面无法登出,或无法登录,或者登录后信息却无法取到,而Firefox下面一直是通过的,都试过好多次了,今天终于找回的主要的原因: Cookie的问题: 首先看一下我的Cookie存取代码 (这个Cookie操作支持二级域名访问) #region 存取Cookie /// 〈summary〉 /// 存Cookie /// Json Lee 2007-09-24 /// 〈/summary〉 /// 〈param name="strName&quo

完美解决客户端webview持有的页面缓存,不会立即释放的问题_Android

安卓和苹果的客户端开发中,经常会使用到webview,我们一般做法是将webview加入到native页面中. 当我们对页面进行销毁的时候,其中webview持有的HTML页面还会继续存在,加入我们在HTML页面中做了一些监听手机晃动.声音-- 以及使用了js定时任务的情况下. 单纯的销毁我们的native页面并不能达到让页面中这些内容停止执行. 所以在小会native页面之前,将webview的页面设置问空页面即可,如下是安卓代码,苹果的处理方法一样: @Override public voi

客户端webview持有的页面缓存,不会立即释放的问题解决

安卓和苹果的客户端开发中,经常会使用到webview,我们一般做法是将webview加入到native页面中. 当我们对页面进行销毁的时候,其中webview持有的HTML页面还会继续存在,加入我们在HTML页面中做了一些监听手机晃动.声音-- 以及使用了js定时任务的情况下. 单纯的销毁我们的native页面并不能达到让页面中这些内容停止执行. 所以在小会native页面之前,将webview的页面设置问空页面即可,如下是安卓代码,苹果的处理方法一样: @Override public voi

WebView 缓存原理分析和应用

一.背景 现在的App开发,或多或少都会用到Hybrid模式,到了WebView这边,经常会加载一些js文件(例如和WebView用来Native通信的bridge.js),而这些js文件不会经常发生变化,所以我们希望js在WebView里面加载一次之后,如果js没有发生变化,下次就不用再发起网络请求去加载,从而减少流量和资源的占用.那么有什么方式可以达到这个目的呢?先得从WebView的缓存原理入手. 二.WebView的缓存类型 WebView主要包括两类缓存,一类是浏览器自带的网页数据缓存

Android WebView 缓存详解

Android WebView 缓存详解 一. 两种缓存类型: 页面缓存:加载一个网页时的html.JS.CSS等页面或者资源数据,这些缓存资源是由于浏览器 的行为而产生,开发者只能通过配置HTTP响应头影响浏览器的行为才能间接地影响到这些缓存数据. 而缓存的索引放在:/data/data//databases 对应的文件放在:/data/data/package_name/cache/webviewCacheChromunm下 数据缓存:分为AppCache和DOM Storage两种 我们开

Android应用开发中WebView的常用方法笔记整理_Android

基本使用使用WebView通常是需要网络的,所以需要加上访问网络的权限 <uses-permission android:name="android.permission.INTERNET" /> 1.加载某个url的方法 WebView.loadUrl("http://www.baidu.com"); 需要注意的是不要省略前面的http://,省略的话,某些ROM中的WebView会加载失败2.加载assets中的HTML WebView.loadUr

android webview增强版,对原生webview的一些解决方案

MWebView 根据 Tamicer/JsWebView 修改定制 为什么要使用WebView 随着app业务的不断深入发展,只靠着原生代码来堆砌功能是不现实,毕竟开发的时长会增加,而且同时需要开发iOS和Android两套,并且,如果在UI上改变了一丁点,都需要提包(虽然Android现在可以进行热更新,但是热更新不是100%能生效的,其中的原理只要了解过的人都会知道的),最终我们会选择使用原生嵌套H5的方式进行开发,这样,既可以随时更改UI,也可以无限制的进行功能扩展,然后,我们就要使用到

Android应用开发中WebView的常用方法笔记整理

基本使用 使用WebView通常是需要网络的,所以需要加上访问网络的权限 <uses-permission android:name="android.permission.INTERNET" /> 1.加载某个url的方法 WebView.loadUrl("http://www.baidu.com"); 需要注意的是不要省略前面的http://,省略的话,某些ROM中的WebView会加载失败 2.加载assets中的HTML WebView.load

Android中的cookie管理简介

Cookie管理是大家在做安卓app中难以避免的问题.我在此发表一些拙见. 先看看cookie可能存放的位置 1.Httpclient会存储当次请求的cookie内容,存储位置在 httpClient.getCookieStore 但是apache建议自定义cookie存储方式,因为cookiestore把cookie放在arraylist里很容易被系统回收[1]. 2.WebView会存储cookie在CookieManager,具体使用方式,后续的文章会讲这里不是重点. 正常HttpClie