- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我已阅读有关 HTML5 缓存 list 的信息,并且我看到 Android 确实支持使用缓存 list 来缓存网站。我想使用缓存 list 下载我的网站所需的所有资源来预加载它,然后打开一个 WebView 并使用预缓存的资源显示远程网站。我想以某种方式预缓存我的远程页面,最好不使用 WebView 进行缓存过程。
将 WebView 用于预缓存过程的问题在于,使用 WebView 加载网页会呈现并执行页面,而不是仅仅下载它。
我读过这个:http://alex.tapmania.org/2010/11/html5-cache-android-webview.html ,但是让 WebView 支持缓存并不是我想要的。我希望在完成预缓存资源后立即加载过程(假设远程网站的缓存 list /etags 与缓存版本相同),而不是等待 WebView 加载并缓存所有内容第一次访问。
预缓存网页以供日后查看的正确方法是什么?
谢谢!
最佳答案
您想要做的事情需要为使用数据库 API 的 HTML5 应用程序实现应用程序缓存、链接资源、cookie 和本地数据库存储机制,这是当今浏览器所做工作的重要组成部分。我不建议自己做缓存,不仅因为它的工作太多,而且因为我不记得 WebView
中的任何方法和它的 friend (WebViewClient
等)接受外部缓存。
但是您的问题有一个非常简单的解决方案:您可以在 View 中放置一个 WebView
并将其 visibility
设置为 gone
。然后在它完成页面加载后使其可见。 WebView
还会自动为您的应用保留缓存,以便下次运行时可以更快地加载页面。
要隐藏您的WebView
然后自动显示它,您只需覆盖WebViewClient 中的onPageFinished
.
关于java - 有没有办法预缓存网页以供使用 Android WebView 查看?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7626566/
我是一名优秀的程序员,十分优秀!