Oto aktualny prosty opis mojej aplikacji. Używa jakiegoś zdalnego interfejsu API serwera, który używa standardowej sesji HTTP. Aktywność logowania. Wywołuje klasę uwierzytelniającą, przekazując login i hasło.Jak przechowywać pliki cookie sesji HTTP w HttpContext pomiędzy działaniami w systemie Android?
public class Auth extends AsyncTask{
...
private DefaultHttpClient client = new DefaultHttpClient();
private HttpContext localContext = new BasicHttpContext();
private CookieStore cookieStore = new BasicCookieStore();
...
public void auth(String login, String password) {
localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
HttpPost request = new HttpPost(url);
...
}
protected void onPostExecute(Boolean result){
parent.loginresponse(result)
}
Po pomyślnym auth, zdalny serwer tworzy sesji HTTP Standart, wysyłając mi ciasteczko, zapisaną w CookiStore. Po zalogowaniu loginresponse rozpoczyna główną aktywność. Tam chcę mieć jedną uniwersalną klasę dla wszystkich żądań API.
Jak wykonać poprawne zachowanie informacji o sesji HTTP, utworzone po zalogowaniu, między wszystkimi działaniami i przekazanie jej do potrzebnych funkcji dla odpowiednich metod API?
Wreszcie rozwiązania zostały znalezione w http://stackoverflow.com/questions/4146861/android-httpclient-persistant-cookies i http : //stackoverflow.com/questions/708012/android-how-to-declare-global-variables – uzer