webView加载本地图片的问题

在处理邮件内容时,遇到WebView无法加载内联图片的问题,尤其是cid引用的图片。尝试了将图片下载到本地并用file:///前缀替换cid的方法无效。最后找到解决方案是将cid替换为图片的base64编码,成功在WebView中显示了图片。这是一个关于WebView、HTML、邮件解析和图片加载的技术问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   最近在使用webview显示邮件内容,但是对于邮件中的内联图片加载总是失败,并不能根据图片的cid加载资源。之后尝试把图片下载到本地之后替换cid的方式加载图片,但是还是失败,网上查了很多办法也不行,这里特别提醒在文件路径前加”file:///“的方法没用,因为看到很多帖子给出了这种方法,但是实测没用。

最终解决方法为将cid替换为图片的base64编码即可成功加载图片

var res = message.decodeTextHtmlPart(); //邮件解码结果(HTML)
var content = image.decodeContentMessage();//图片的base64编码


 <img src="cid:8029d20$1$17aecf22414$Coremail$wsp4531$163.com" style="max-width: 100%;"> //解码结果中图片资源初始cid

res = res!.replaceAll("cid:" + cid, "data:image/png;base64," + content.toString()); //将cid替换之后将res传入webview即可显示图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值