WebApp:如何让安卓的webview缓存webapp的html、js和图片等资源

时间:2023-03-09 05:29:59
WebApp:如何让安卓的webview缓存webapp的html、js和图片等资源
一、开发环境
    客户端:安卓+webview(vuejs)
    服务器端:tomcat 8.0

二、问题
    使用安卓原生+web(基于webpack+vuejs)的方式开发了一个安卓应用,由于web的js文件较大,大概有400k左右,每次从app中打开该页面都要重新从服务器端下载页面的html、js和图片等静态资源,反应速度比较慢了,大概需要三四秒(如果用户网速慢的话,则需要更久),体验效果就很不好。
    所以就考虑是不是可以只在第一次打开的时候下载,然后就缓存在客户端,以后只有有更新的时候才下载,但是开发人员在将安卓的webview的缓存选项设置为"/>

三、分析
    首先安卓的webview的缓存选项设置为, public</param-value>
  • </init-param>
  • </filter>
  • <filter-mapping>
  • <filter-name>NoCache</filter-name>
  • <url-pattern>*.do</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>/images/*</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>/img/*</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>/icons/*</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>/ext/*</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>*.js</url-pattern>
  • </filter-mapping>
  • <filter-mapping>
  • <filter-name>CacheForWeek</filter-name>
  • <url-pattern>*.css</url-pattern>
  • </filter-mapping>