Android: HttpClient與Webview共享cookies

yangxi_001發表於2015-03-11

httpclient與webview需要進行cookie 共享,因為如果不共享,那麼假設你在httpclient進行了登入,然後用webview裡開啟那些login之後才能看的page,就會叫你再login


[java] view plaincopy
  1. DefaultHttpClient httpclient=....;  
  2. String toUrl="https://cap.cityu.edu.hk/studentlan/details.aspx.....";  
  3.   
  4. List<Cookie> cookies = httpclient.getCookieStore().getCookies();  
  5.   
  6. if (! cookies.isEmpty()){  
  7.     CookieSyncManager.createInstance(this);  
  8.     CookieManager cookieManager = CookieManager.getInstance();  
  9.         //sync all the cookies in the httpclient with the webview by generating cookie string  
  10.     for (Cookie cookie : cookies){  
  11.         String cookieString = cookie.getName() + "=" + cookie.getValue() + "; domain=" + cookie.getDomain();  
  12.         cookieManager.setCookie(toUrl, cookieString);  
  13.         CookieSyncManager.getInstance().sync();  
  14.     }  
  15. }  

相關文章