公司用到一个功能就是根据登录接口返回cookie,保存cookie,用网页打开保持登陆状态。 流程如下:1、获取Cookie 2、设置Cookie
HttpClient httpClient = new DefaultHttpClient();
String loginUrl = "";//你的登录url
HttpPost httpPost = new HttpPost(loginUrl);
CookieStore cookieStore = null;
try {
HttpResponse response = httpClient.execute(httpPost);
cookieStore = ((AbstractHttpClient) httpClient).getCookieStore();
List<Cookie> cookies = cookieStore.getCookies();
for (int i = 0; i < cookies.size(); i++) {
Cookie cookie = cookies.get(i);
synCookies(this,cookie.getDomain(), cookie.getName() + "=" + cookie.getValue());
}
} catch (Exception e) {
e.printStackTrace();
}
String pageUrl = "";//你要用WebView打开的url
webView.loadUrl(pageUrl);
public void synCookies(Context context, String url, String cookies) {
CookieSyncManager.createInstance(context);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
cookieManager.removeSessionCookie();// 移除
cookieManager.setCookie(url, cookies);// 指定要修改的cookies
CookieSyncManager.getInstance().sync();
}