Java android - CookieHandler - 如何在关闭应用程序后保留cookies?
Java android - CookieHandler - How to keep cookies after closing the app?
要在 HttpURLConnection 中的每个请求后保留 cookie,应在开始的应用程序上添加 CookieHandler:
CookieManager cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
但是在应用程序关闭并再次打开时,cookies 是空的...
那么关闭后的cookies如何保存呢?
比如将它们保存在 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);
}
}
谢谢..
默认 CookieStore
不会将任何内容保存到磁盘,您需要实现一个。这里是 an example implementation 将 Cookie 直接保存到 SharedPreferences。
要在 HttpURLConnection 中的每个请求后保留 cookie,应在开始的应用程序上添加 CookieHandler:
CookieManager cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
但是在应用程序关闭并再次打开时,cookies 是空的... 那么关闭后的cookies如何保存呢?
比如将它们保存在 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);
}
}
谢谢..
默认 CookieStore
不会将任何内容保存到磁盘,您需要实现一个。这里是 an example implementation 将 Cookie 直接保存到 SharedPreferences。