Android Webview Cookies获取在应用后被清除

Android Webview Cookies Getting are Cleared after App

我有一个 android 应用程序正在使用 webview 显示 angular 8 个网站。

我可以在首次登录时完美地使用该应用程序。发送到服务器的每个后续请求都会在请求 headers.

中添加 cookie

但是一旦我关闭应用程序,cookie 就不再存在。 该应用要求重新登录。

我尝试添加以下行:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.setAcceptCookie(true);
    
        mWebView = (WebView) findViewById(R.id.webview);
        if (android.os.Build.VERSION.SDK_INT >= 21) {
            cookieManager.setAcceptThirdPartyCookies(mWebView, true);
        }
    }


     @Override
     public void onPageFinished(WebView webView, String url) {
     super.onPageFinished(webView, url);
     
     if (mProgressDialog.isShowing()) {
         mProgressDialog.dismiss();
        }
     }

基本上,我想保留 cookie,而不是在随后的重启后清除它们。

感谢任何帮助。 谢谢!!

您可以在 onPageFinished

中调用 CookieManager.getInstance().flush()

flush():确保当前可通过 getCookie API 访问的所有 cookie 都写入持久存储。此调用将阻塞调用者,直到完成并可能执行 I/O.