URLConnection with Cookies?

android, cookies, java, urlconnection

Solution

I was able to enable cookies using Ian Brown's CookieManager class: http://www.hccp.org/java-net-cookie-how-to.html

I renamed it to IansCookieManager, set a class variable _CM = new IansCookieManager, now it's simple:

            URLConnection conn = u.openConnection();
            _CM.setCookies(conn);
            conn.connect();
            _CM.storeCookies(conn);
            ... 

Problem

I'm trying to make a URLConnection that supports cookies. According to the documentation I can use: ``` CookieManager cookieManager = new CookieManager(); CookieHandler.setDefault(cookieManager); ``` I couldn't get this code to work, then I saw this only works for API 9 (2.3). However, I don't get an error using CookieManager in an older emulator, CookieManager exists, but can't be constructed. Is there any way to make this work for earlier versions? I tried: ``` cookieManager.setAcceptCookie(true); URLConnection con = u.openConnection(); con.setRequestProperty("Cookie", cookieManager.getInstance().getCookie(url);); con.setDoOutput(true); con.connect(); String addCookie = con.getHeaderField("Set-Cookie"); System.out.println(con.getHeaderFields().toString()); if (addCookie!=null) { cookieManager.getInstance().setCookie(url, addCookie); } ``` but this doesn't work.

Original source