2017-01-18 100 views
2

我该如何重置WebView状态(缓存,Cookie等)?将webview重置为初始状态

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

回答

0

我认为这个问题可能已经回答:

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

用法:

WebView webView; 
webView.clearCache(true); 

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

关于饼干,抽象类CookieManager提供CookieHandler为API一个removeAllCookies()< 21或removeAllCookies(ValueCallback <布尔>),用于API> = 21:https://developer.android.com/reference/android/webkit/CookieManager.html

用法:

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

初始化具有以下设置的WebView:

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

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

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

mWebView.getSettings().setSaveFormData(boolean save) 

然后,当你想消灭,这样做:

mWebView.clearCache(true); 

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