Jun 21, 2010
I'm writing a small application which needs httpclient lib, basically to manage the cookie/session automatically. The website I'm targeting needs a valid session, so, between each http call, I need to send the cookie. Httpclient does it well. This is a tv stream application and I have to fetch the channel url, the url has a token parameter and I have to be logged / authenticated / (=> have a valid cookie/sessionid) to fetch the channel url.
View 5 Replies
I got the first cookie/sessionid with the first connection to the website. The cookie is valid for a certain amount of time, there is no "expires" but I don't know if there is any server cron to cleanup the sessions. I assume I have to "ping" every x secondes to maintain the session valid.
Between each http call, the time could be from 1 sec to several minutes, it depends if the user wants to change the watched tv channel. The http call (to fetch the url) is not made by the UI Thread.
There are several possibilities to manage the httpclient : - a single httpclient static singleton instance accessed by a custom synchronized getClient() on an helper class => when / how to release the http connection ? How to handle that correctly if the user got a phone call / does not use the application for now (unvalidate during onResume, etc)? - Save the cookie (String serialized into SharedPreferences) and create every time a new httpclient instance (then set the cookie to the new instance) => overhead to get the http connection - other ?