WebView中集成了SSO登录(单点登录),一旦用户登录,我就会从重定向的url(如果用户存在)中获取参数,并移至应用程序的主页。应用关闭,终止或注销后,我想清除WebView的会话。由于会话未过期,到目前为止,我将直接重定向url。
这些解决方案对我不起作用
webView.clearCache(true);
webView.clearHistory();
webView.destroy();
答案 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();
}
}
}