Uma boa maneira de manter a id de sessão do servidor no Android.

Esta é uma maneira legal e totalmente transparente de manter uma sessão ativa (usuário logado ou qualquer outra coisa) em aplicativos Android.
Ele usa o apache DefaultHttpClient dentro de um Singleton e um HttpRequest / Response Interceptors.

A classe SessionKeeper simplesmente verifica se um dos cabeçalhos é Set-Cookie e, se for, simplesmente se lembra dele.
O SessionAdder simplesmente adiciona o id da sessão à solicitação (se não for nulo).
Desta forma, você todo o processo de autenticação é totalmente transparente.

public class HTTPClients {

private static DefaultHttpClient _defaultClient;
private static String session_id;
private static HTTPClients _me;
private HTTPClients() {

}
public static DefaultHttpClient getDefaultHttpClient(){
if ( _defaultClient == null ) {
_defaultClient
= new DefaultHttpClient();
_me
= new HTTPClients();
_defaultClient
.addResponseInterceptor(_me.new SessionKeeper());
_defaultClient
.addRequestInterceptor(_me.new SessionAdder());
}
return _defaultClient;
}

private class SessionAdder implements HttpRequestInterceptor {

@Override
public void process(HttpRequest request, HttpContext context)
throws HttpException, IOException {
if ( session_id != null ) {
request
.setHeader("Cookie", session_id);
}
}

}

private class SessionKeeper implements HttpResponseInterceptor {

@Override
public void process(HttpResponse response, HttpContext context)
throws HttpException, IOException {
Header[] headers = response.getHeaders("Set-Cookie");
if ( headers != null && headers.length == 1 ){
session_id
= headers[0].getValue();
}
}

}
}