代码之家  ›  专栏  ›  技术社区  ›  Ali Sheikhpour

android WebView Cookie在退出应用程序时过期

  •  0
  • Ali Sheikhpour  · 技术社区  · 4 年前

    作为 CookieSyncManager.getInstance().sync(); is deprecated 我试图使用新命令在我的应用程序中永久维护Cookie flush() :

    webview.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                CookieManager.getInstance().setAcceptCookie(true);
                CookieManager.getInstance().acceptCookie();
                CookieManager.getInstance().acceptThirdPartyCookies(webview);
                CookieManager.getInstance().flush();
            }
            // and more settings for webview
       }
    

    但每次我打开应用程序时,之前的Cookie似乎都已过期。这些选项有助于保存Cookie吗?我应该把它们放进去吗 onPageFinished ?

    此外,我不得不说,Cookie在目标网站上运行良好,并且可以存活100天。minSdkVersion的值为21,targetSdkVersion为29。

    0 回复  |  直到 4 年前
        1
  •  0
  •   Amirhosein    4 年前

    使用PersistentCookieJar持久且有利于将Cookie封装在应用程序本身中。请检查 this

    每次APP计划启动Webview时,都需要将Cookie从PersistentCookieJar复制到CookieManager。