3

Чтобы сохранить куки после каждого запроса в HttpURLConnection, следует добавить CookieHandler на приложение запуска:Java android - CookieHandler - Как сохранить куки после закрытия приложения?

CookieManager cookieManager = new CookieManager(); 
CookieHandler.setDefault(cookieManager); 

Но в закрытии приложения и открытия снова печенье пустой ... Так как сохранить куки после закрытие?

Нечто подобное сохранить их в SharedPreferences или в файле и получить их обратно после открытия ...

я судимое держать их с помощью CookieStore, но это не сработало: ...

Сохранить :

Settings.Save(c, TAG, cookieManager.getCookieStore().getCookies().toString()); 

Нагрузка:

String load = Settings.Load(c, TAG); 
if (load != null) { 
    for (HttpCookie hc : HttpCookie.parse(load)) { 
     cookieManager.getCookieStore().add(new URI(Data.domain), hc); 
    } 
} 

Спасибо ..

+0

Да, что случилось с 'sharedPreference'? Они отлично соответствуют вашим требованиям –

+0

Да, но как конвертировать файлы cookie в строку и обратно? но это неважно, я уже получил ответ ... – Soko

ответ

6

По умолчанию CookieStore не хранит ничего на диске, вам нужно реализовать тот, который делает. Вот an example implementation, который сохраняет Cookies непосредственно в SharedPreferences.

+0

Он работает .. спасибо! – Soko

+0

спасибо, что он работал как магия – MFQ