Android小记-根据domain清除cookie
来源:互联网 发布:大爆太子太空舱知乎 编辑:程序博客网 时间:2024/05/21 15:49
Android WebView中可以直接全部清除cookie,但如果我们想要根据某个域名指定清除cookie,则大概代码如下:
必要方法:
public static void clearCookieByUrl(String url, CookieManager pCookieManager, CookieSyncManager pCookieSyncManager) { Uri uri = Uri.parse(url); String host = uri.getHost(); clearCookieByUrlInternal(url, pCookieManager, pCookieSyncManager); clearCookieByUrlInternal("http://." + host, pCookieManager, pCookieSyncManager); clearCookieByUrlInternal("https://." + host, pCookieManager, pCookieSyncManager); } private static void clearCookieByUrlInternal(String url, CookieManager pCookieManager, CookieSyncManager pCookieSyncManager) { if (TextUtils.isEmpty(url)) { return; } String cookieString = pCookieManager.getCookie(url); Vector<String> cookie = getCookieNamesByUrl(cookieString); if (cookie == null || cookie.isEmpty()) { return; } int len = cookie.size(); for (int i = 0; i < len; i++) { pCookieManager.setCookie(url, cookie.get(i) + "=-1"); } pCookieSyncManager.sync(); } private static Vector<String> getCookieNamesByUrl(String cookie) { if (TextUtils.isEmpty(cookie)) { return null; } String[] cookieField = cookie.split(";"); int len = cookieField.length; for (int i = 0; i < len; i++) { cookieField[i] = cookieField[i].trim(); } Vector<String> allCookieField = new Vector<String>(); for (int i = 0; i < len; i++) { if (TextUtils.isEmpty(cookieField[i])) { continue; } if (!cookieField[i].contains("=")) { continue; } String[] singleCookieField = cookieField[i].split("="); allCookieField.add(singleCookieField[0]); } if (allCookieField.isEmpty()) { return null; } return allCookieField; }
调用方式:
String domainUrl = "http://www.facebook.com"; CookieManager mCookieManager = CookieManager.getInstance(); CookieSyncManager mCookieSyncManager = CookieSyncManager.createInstance(getApplicationContext()); Utils.clearCookieByUrl(domainUrl , mCookieManager, mCookieSyncManager);
0 0
- Android小记-根据domain清除cookie
- JavaScript清除Cookie完全攻略--被domain和path折磨
- cookie domain
- cookie domain
- Cookie小记
- Cookie小记
- Android客户端注入及清除Cookie
- Android客户端注入及清除Cookie
- Android Webview清除缓存和Cookie
- Android客户端注入及清除Cookie
- Android客户端注入及清除Cookie
- Android客户端注入及清除Cookie
- Android客户端注入及清除Cookie
- Android清除单个域名的cookie
- Android Webview清除缓存和Cookie
- 清除Cookie
- 清除Cookie
- cookie清除
- QDialog 数据传递
- 深度学习框架Torch7解析-- Tensor篇
- 判断页面加载后是否所有的下拉框都有数据
- 数据库和实例
- 精灵游戏实现
- Android小记-根据domain清除cookie
- HDOJ3763 二分查找
- Xtext Language
- JavaScript DOM中删除元素
- 分类算法:朴素贝叶斯算法
- 《计算机组成与原理》读书笔记5
- hdu2602 Bone Collector(01背包)
- 13 款惊艳的 Node.js 框架——第2部分
- 简述dfs,bfs,Dijkstra思想及区别