将WebView缓存图像加载到ImageView中

时间:2013-12-03 11:54:45

标签: android caching android-webview webviewclient

我有一个WebView,使用这些设置将其图像缓存到目录中:

mWebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
mWebView.getSettings().setAppCacheMaxSize( 8 * 1024 * 1024 ); // 8MB
mWebView.getSettings().setAppCachePath(getApplicationContext().getCacheDir().getAbsolutePath());
mWebView.getSettings().setAllowFileAccess(true);
mWebView.getSettings().setAppCacheEnabled(true);

我希望能够将使用此WebView缓存的图像加载到ImageView中。

我正在查看缓存目录指向的目录,使用adb shell(/data/data/com.example.webviewtest/cache),我找到了以下文件夹:

  • ApplicationCache.db
  • com.android.opengl.shaders_cache
  • webviewCacheChromium

有没有办法在这些目录中找到下载的图像?

如果是,我可以将它们加载到Bitmap中(在ImageView中使用)吗?

1 个答案:

答案 0 :(得分:3)

资源保存在ApplicationCache.db中,这是一个SQLite数据库。您正在寻找的图像可以从数据库中检索,但数据库的格式可能会在Android版本之间发生变化,因此实现兼容的方法很难实现。我认为你最好自己在WebView之外下载和缓存图像。