如何在应用程序执行之间保留webview cookie?

时间:2017-08-18 08:06:59

标签: android cookies webview android-webview android-cookiemanager

目前在Android中可以实现这一目标吗?我只能找到关于旧方法(CookieSynchManager)的弃用问题,这些问题实际上并不适用于此。

有可能实现吗?在Android开发者指南中也找不到任何东西。

谢谢

2 个答案:

答案 0 :(得分:1)

由于不推荐使用 CookieSynchManager CookieManager.getInstance()是整个应用程序的 CookieManager 实例。因此,您可以通过

启用它
CookieManager.getInstance().setAcceptCookie(true)
  

setAcceptCookie(boolean accept);

     

设置应用程序的WebView实例是否应该发送和   接受cookies。

https://developer.android.com/reference/android/webkit/CookieManager.html

答案 1 :(得分:1)

有同样的问题...我解决了在这里阅读文档的问题:

https://developer.android.com/reference/android/webkit/CookieSyncManager

对于将来的读者:要强制执行Cookie同步过程,您可以手动调用CookieManager的flush()方法

我个人在webview中添加了以下代码:

public class MyWebViewClient extends WebViewClient {

    public void onPageFinished(WebView view, String url) {
      CookieManager.getInstance().setAcceptCookie(true);
      CookieManager.getInstance().acceptCookie();
      CookieManager.getInstance().flush();
    }
}