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。