WebView显示本地缓存中的图像

时间:2013-08-06 14:15:16

标签: android

我必须在WebView中显示一些HTML内容,其中包含来自互联网上URL的图像和来自本地电话缓存的图像。 img的src标记具有如下值:

文件:///data/data/com.Domain.MyApp/cache/example.jpg

但WebView不呈现图像。我确信路径是正确的,并且该文件存在。可能是什么问题,我该如何解决?

2 个答案:

答案 0 :(得分:3)

设置src标记的img属性,如下例所示:

/data/data/com.Domain.MyApp/cache/example.jpg

将HTML内容作为HTML文件保存到与图像相同的文件夹中(当前问题中的缓存目录)。

最后像这样加载html文件:

mDescriptionWeb.loadUrl("file://" + this.getCacheDir() + "/" + "current.html");

答案 1 :(得分:1)

我认为cache目录并不是一个真正存放东西的安全场所。您是否考虑过使用getExternalStorageDirectory()的选项?

我的应用程序从互联网下载上下文帮助,保存getExternalStorageDirectory() + "/help"中的所有文件,并从WebView打开它,没有任何问题。

看看:

http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory%28%29

试一试......

另一种选择是使用资产,看看 http://developer.android.com/reference/android/content/res/AssetManager.html