Android-关于WebView需要注意的东西

本文介绍在Android中使用WebView加载本地HTML文件的方法,并对比了使用loadData和loadDataWithBaseURL的区别。当加载包含本地资源的HTML时,推荐使用loadDataWithBaseURL以避免资源加载失败的问题。

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

使用这个方法加载字符串的html的页面数据时,在1.5以下必须经过编码。 

  1. mWebView.loadData(currentContent, “text/html”, currentCharset);

  2. //编码方式如下

  3. currentContent = URLEncoder.encode(currentContent, “utf-8″).replaceAll(“\\+”, ” “).trim();



  4. //<img src=”file:///sdcard/irss/images/xxx.jpg” />

  5. //而使用loadData加载带有本地图片的html数据时,会抛出类似下面的错误。

  6. Console: Not allowed to load local resource: file:///sdcard/irss/images/xxx.jpg



  7. //解决办法使用loadDataWithBaseURL方法,加载如下数据。

  8. //<img src=”xxx.jpg” />

  9. mWebView.loadDataWithBaseURL(“file:///sdcard/irss/images/“, currentContent, “text/html”, currentCharset, “”);
复制代码


而这时比较奇怪的是,使用loadDataWithBaseURL方法,就不需要对html数据进行编码了。

链接地址:http://www.1000phone.net/thread-6108-1-1.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值