提问者:小点点

将webview重置为其初始状态


我应该如何重置WebView状态(缓存、cookie和其他一切)?

我想要的是webview状态、首选项等完全重置为默认值(当我们第一次运行应用程序时,或者在我们从设置中清除应用程序数据之后)。


共2个答案

匿名用户

使用以下设置初始化WebView:

不要使用缓存,从网络加载。

mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

设置WebView是否应保存表单数据。

mWebView.getSettings().setSaveFormData(boolean save) 

然后当你想消灭的时候,做:

mWebView.clearCache(true);

这将清除包括磁盘文件在内的资源缓存。

匿名用户

我想这个问题可能已经得到了回答:

  • 这里:Android Webview-完全清除缓存
  • 这里:当不在webview中时,如何在Android上清除webview的cookie和缓存?

要清除WebView的缓存,可以使用以下方法:https://developer.android.com/reference/android/webkit/WebView.html#clearCache(布尔值)

用法:

WebView webView;
webView.clearCache(true);

请注意,缓存是针对每个应用程序的,这意味着如果您使用此方法,您不仅要清除您正在使用的WebView的缓存,还要清除您的应用程序的所有其他缓存。

关于cookie,抽象类CookieManager为API提供了一个RemoveAllCookies()

用法:

CookieManager.getInstance().removeAllCookies(null);
CookieManager.getInstance().flush();