Android客户端注入及清除Cookie

原创
2014/01/17 04:06
阅读数 4W

    在Android应用程序中经常会加载一个WebView页,如果需要客户端向WebView传递信息,比如Cookie,也是可以的。

需要应用程序先将Cookie注入进去,打开该网页时,WebView会将加载的url通过http请求传输到服务器。同时,在这次请求中,会将Cookie信息通过http header传递过去。

    流程如下:

    1、客户端通过以下代码设置cookie

public static void synCookies(Context context, String url) {  
	    CookieSyncManager.createInstance(context);  
	    CookieManager cookieManager = CookieManager.getInstance();  
	    cookieManager.setCookie(url, "uid=1243432"); 	    		
	    CookieSyncManager.getInstance().sync();  
	}

   2、CookieManager会将这个Cookie存入该应用程序/data/data/databases/目录下的webviewCookiesChromium.db数据库的cookies表中

   3、打开网页,WebView从数据库中读取该cookie值,放到http请求的头部,传递到服务器

   4、客户端可以在注销登录时清除该应用程序用到的所有cookies

private void removeCookie(Context context) {
		CookieSyncManager.createInstance(context);  
		CookieManager cookieManager = CookieManager.getInstance(); 
		cookieManager.removeAllCookie();
		CookieSyncManager.getInstance().sync();  
	}


展开阅读全文
打赏
2
8 收藏
分享
加载中
不错4
2015/12/17 14:40
回复
举报
更多评论
打赏
1 评论
8 收藏
2
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部