2

我做一个电子邮件申请。当用户查看 html 时,它会首先加载 HTML 图像,当用户下次查看时,它会再次从 Internet 加载 HTML 图像。它不能节省带宽。我可以保存图像吗?如果可能的话,我可以在 WebView 中加载它吗?

4

3 回答 3

0

我将覆盖 onLoadResource(注意不仅是图像,还有各种资源,如 CSS)手动下载图像并将其存储在本地。


  • 另一种解决方案
    1. 下载所有 HTML 内容
    2. 解析内容以获取图像 URL
    3. 下载图像并将其存储在本地
    4. 将 URL 替换为您的本地路径:src="file:///android_asset/html/image2.jpg"
于 2012-09-20T09:21:24.263 回答
0

你可以使用加载它

web.loadDataWithBaseURL(null, getHtmlData(this,"IMAGEPATH");

于 2012-09-20T08:53:28.423 回答
0

您应该解析您的 HTML 内容以下载图像并将其放在设备 sdcard 上。然后,您可以将 HTML 中的所有图像 src 替换为磁盘上的文件绝对路径。

String htmlToParse = item.getContent();

                Elements tags = Jsoup.parse(htmlToParse).select("img");
                if (!tags.isEmpty()) {
                    for (Element tag : tags) {
                        String url = tag.attr("src");
                        File f = downloadImage(url);
                        htmlToParse.replace(url, f.getAbsolutePath());
                    }
                }
于 2012-09-20T08:27:28.897 回答