我试图在我的WebView
上设置一些cookie,以使用与我的应用相同的会话打开浏览器。在WebView中设置Cookie android
我读了很多答案,但他们不适合我。我找到的唯一解决方案是在loadUrl
中,对extraHeaders
中的cookie数据进行硬编码,但按预期这只适用于此请求,并且不会维护会话。
,我有代码:
CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(mWebView.getContext());
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
cookieManager.removeSessionCookie();
cookieManager.setCookie("http://xx.xxx.example.com","mid="+MySession.GetSession().sessionId+" ; Domain=.example.com");
cookieSyncManager.sync();
String cookie = cookieManager.getCookie("http://xx.xxx.example.com");
Log.d(LOGTAG, "cookie ------>"+cookie);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new TuWebViewClient());
mWebView.loadUrl("http://xx.xx.example.com");
getCookie()
返回正确的数据,但是当我从服务器读取饼干,这些都是空的。哪里不对?请指教。 谢谢!!!
真的吗?没有人? – flipper83 2011-03-23 10:46:58
问题帮助不止回答。大。 – Darpan 2013-07-11 16:44:01
我的工作代码和查询编译的方法 http://stackoverflow.com/a/32189400/5261591 – 2015-08-24 18:47:27