eager
eager

Reputation: 627

Webview is not clearing the cache

To clear cache of WebView, I have used

   webview.getSettings().setAppCacheEnabled(false);
   webview.clearCache(true); 
   webview.loadUrl("about:blank");
   webview.reload()

             or 

   deleteDatabase("webview.db");
   deleteDatabase("webviewCache.db");

             or
   webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
   webview.clearCache(true);
   webview.clearHistory();

But nothing is clearing cache. Any suggestion??

Upvotes: 2

Views: 2846

Answers (2)

hrk singh
hrk singh

Reputation: 185

To clear all the webview caches while you signOUT form your APP:

CookieSyncManager.createInstance(this);         
CookieManager cookieManager = CookieManager.getInstance();        
cookieManager.removeAllCookie();

For Lollipop and above:

CookieSyncManager.createInstance(this);         
CookieManager cookieManager = CookieManager.getInstance();        
cookieManager.removeAllCookies(ValueCallback);

To clear the history, simply do:

this.WebView.clearHistory();

Upvotes: 1

alamshahbaz16497
alamshahbaz16497

Reputation: 139

I have been trying to figure out the way to clear the cache, but all we could do from the above mentioned methods was remove the local files, but it never clean the RAM.

The API clearCache, frees up the RAM used by the webview and hence mandates that the webpage be loaded again.

public void clearCache (boolean includeDiskFiles)

includeDiskFiles boolean: if false, only the RAM cache is cleared

Clears the resource cache.

Note that the cache is per-application, so this will clear the cache for all WebViews used.

Suggested: To clear all the webview caches while you signOUT form your APP:

CookieSyncManager.createInstance(this);         
CookieManager cookieManager = CookieManager.getInstance();        
cookieManager.removeAllCookie();

For Lollipop and above:

CookieSyncManager.createInstance(this);         
CookieManager cookieManager = CookieManager.getInstance();        
cookieManager.removeAllCookies(ValueCallback);

Upvotes: 3

Related Questions