iOS的webView如何实现html的离线缓存

2025-02-27 11:35:17
推荐回答(1个)
回答1:

  这个实现难点在缓存图片上。html代码的缓存对你来说不是问题吧。基于这个前提,
  下面这个方案是我自己做的,也具体在项目实现了。思路是这样的:
  第1步、先获取html页面里所有图片地址。
  方法一:离线获取获取到html代码。html代码你可以把他理解成是一个很长的字符串。通过正则表达式把这个html页面里的所有img标签url。如果是相对url,就加上host。如果是绝对url,就直接下载。这样这个页面里的所有图片路径都拿到了。
  方法一的获取img标签url的正则表达式:
  NSString *urlPattern = @"]+?src=[\"']?([^>'\"]+)[\"']?";

  方法二:通过webview和js 本地程序的交换,获取到html页面所有图片下载地址。