应用关闭或终止后清除WebView会话

时间:2019-05-22 09:19:28

标签: android session webview

WebView中集成了SSO登录(单点登录),一旦用户登录,我就会从重定向的url(如果用户存在)中获取参数,并移至应用程序的主页。应用关闭,终止或注销后,我想清除WebView的会话。由于会话未过期,到目前为止,我将直接重定向url。

这些解决方案对我不起作用

webView.clearCache(true);

webView.clearHistory();

webView.destroy();

1 个答案:

答案 0 :(得分:1)

我认为清除cookie可以使会话关闭。 试试这个。

CookieSyncManager cookieSyncMngr = CookieSyncManager.createInstance(context);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie();

另一种方式

static void clearWebViewAllCache(Context context, WebView webView) {
  try {
    AgentWebConfig.removeAllCookies(null);
    webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
    context.deleteDatabase("webviewCache.db");
    context.deleteDatabase("webview.db");
    webView.clearCache(true);
    webView.clearHistory();
    webView.clearFormData();
    clearCacheFolder(new File(AgentWebConfig.getCachePath(context)), 0);
  } catch (Exception ignore) {
    //ignore.printStackTrace();
    if (AgentWebConfig.DEBUG) {
      ignore.printStackTrace();
    }
  }

}