【发布时间】:2015-03-26 02:18:21
【问题描述】:
我正在尝试使用 WebView 在 Android 中显示我的博客文章。
我可以在 sqlite DateBase 中保存HTML 文本以供用户离线时使用,但问题是用户在线时将图像保存在目录中。
下次访问,如果在指定目录中找到图像,请使用它! ,否则下载并缓存以备将来使用!
【问题讨论】:
我正在尝试使用 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的信息。
【讨论】: