存储WebView以进行脱机浏览

Ale*_*lly 9 html html5 android webview android-webview

加载页面后,强制Android将webview存储到媒体的最佳方法是什么?

更多细节:

  • 每个页面都将丰富的图像,脚本和样式.

  • 每页大约0.5到1兆字节.

  • 一旦调用OnFinishedLoading Override,它们将被保存.

  • 最好将其保存到SD卡,然后使用本地仓库将其打开备份.

不确定我是否应该只为webview使用sql数据库,或者采用每个视图并写出文件.

如果我做后者,那么最简单的方法是什么,所以我不必写一个完整的webcrawler来连接每个文件?

Dan*_*iel 7

要在Android上使用缓存,您需要提供HTML5清单文件以及HTML.

<!DOCTYPE html>
<html lang="en" manifest="manifest.file">
<head> ...
Run Code Online (Sandbox Code Playgroud)

缓存机制会将清单文件中列出的任何条目缓存到SQLite数据库中.请记住,数据库是每个应用程序,而不是每个webview.(我有很多问题).

本文介绍了实现此目的所需的所有步骤.http://web.archive.org/web/20140314001433/http://alex.tapmania.org/2010/11/html5-cache-android-webview.html

您可以使用此页面进行缓存的hello-world示例:http: //html5demos.com/offlineapp

只要将WRITE_EXTERNAL_STORAGE权限添加到应用程序清单,就可以将缓存保存在SD卡上.

祝好运!

  • 如果webview缓存文件夹设置为SD卡,则不会影响应用程序缓存文件夹.你甚至可以调用`webview.clearCache()`来检查这一点,SD卡上的数据库不会被删除. (2认同)