Android WebView 下载图片到缓存路径

Android WebView download image in a path as Cache

我正在尝试使用 WebView 在 Android 中显示我的博文。

我可以在 sqlite DateBase 中保存 HTML 文本以供下次用户离线时使用,但问题是当用户在线时将图像保存在目录中。 下次访问如果在指定目录中找到图像,请使用它! , 否则下载并缓存以备将来使用!

尝试启用 WebView 应用缓存:

// Set cache size to 8 mb by default. should be more than enough
mWebView.getSettings().setAppCacheMaxSize(1024*1024*8);
mWebView.getSettings().setAppCachePath("/data/data/"+ getPackageName() +"/cache");
mWebView.getSettings().setAppCacheEnabled(true);

cm = (ConnectivityManager) this.getSystemService(Activity.CONNECTIVITY_SERVICE);
if (cm != null && cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected()) {
    webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
} else {
    webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
}

您需要添加 .ACCESS_NETWORK_STATE.ACCESS_WIFI_STATE 权限。

Here 您可以找到有关所有 WebSettings.

的更多信息