-
-
Save jaydeepw/3594828 to your computer and use it in GitHub Desktop.
private void enableHTML5AppCache() { | |
webView.getSettings().setDomStorageEnabled(true); | |
// Set cache size to 8 mb by default. should be more than enough | |
webView.getSettings().setAppCacheMaxSize(1024*1024*8); | |
// This next one is crazy. It's the DEFAULT location for your app's cache | |
// But it didn't work for me without this line | |
webView.getSettings().setAppCachePath("/data/data/"+ getPackageName() +"/cache"); | |
webView.getSettings().setAllowFileAccess(true); | |
webView.getSettings().setAppCacheEnabled(true); | |
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); | |
} |
You have to check for internet connectivity before telling to load from cache
thanks!!! a lot!
Did anybody found that the Application Cache path is not in the path which setted in setAppCachePath funciton("/data/data/"+ getPackageName() +"/cache"),but it was in data/data/packagename/app_webview/Application Cache on Kitkat?
it works, thanks
appcache method will deprecated, you can look at this lib https://github.com/yale8848/CacheWebView , hope help you
Thanks, It solved my issue. I was trying to show angular component inside webview but It was not showing, after I get to know that Angular requires html5 support, adding this code help me to solve issue
thank you brooooooo. thats fucking awesome
It's good, but some apps or android versions can change this path. Then, use "getFilesDir()", instead of "data/data".
webView.getSettings().setAppCachePath(getFilesDir() + getPackageName() +"/cache");
@salahzidi it's programming not magic, of course you need to set it on your HTML5 file, it just allows webview to support it