存储WebView以供离线浏览

2024-01-08

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

更多细节:

  • 每个页面都将包含丰富的图像、脚本和样式。

  • 每页大约为 0.5 到 1 MB。

  • 一旦调用 OnFinishedLoading Override,它们就会被保存。

  • 最好将其保存到 SD 卡,然后使用本地存储库将其打开。

不确定我是否应该为 webview 使用 sql 数据库,或者获取每个视图并将其写入文件。

如果我选择后者,最简单的方法是什么,这样我就不必编写完整的网络爬虫来链接每个文件?


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

<!DOCTYPE html>
<html lang="en" manifest="manifest.file">
<head> ...

缓存机制会将清单文件中列出的所有条目缓存到 SQLite 数据库中。请记住,数据库是针对每个应用程序的,而不是针对每个 Web 视图的。 (我对此有很多问题)。

本文解释了实现此目标所需采取的所有步骤。http://web.archive.org/web/20140314001433/http://alex.tapmania.org/2010/11/html5-cache-android-webview.html http://web.archive.org/web/20140314001433/http://alex.tapmania.org/2010/11/html5-cache-android-webview.html

您可以使用此页面创建一个用于缓存的 hello-world 示例:http://html5demos.com/offlineapp http://html5demos.com/offlineapp

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

祝你好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

存储WebView以供离线浏览 的相关文章

  • 暂停除了已激活的玩家之外的所有其他玩家。

    我有这个插件 它可以将不同的样式应用于 html5
  • Android Activity 生命周期函数基础知识

    我正在测试这段代码 它显示活动所处的状态 public class Activity101Activity extends Activity String tag Lifecycle Called when the activity is
  • 找不到处理意图 com.instagram.share.ADD_TO_STORY 的活动

    在我们的 React Native 应用程序中 我们试图让用户根据视图 组件中的选择直接将特定图像共享到提要或故事 当我们尝试直接使用 com instagram share ADD TO FEED 进行共享时 它以一致的方式完美运行 但是
  • Android 模拟器插件无法初始化后端 EGL 显示

    我在 Cloudbees 上设置了 Jenkins 作业 并且可以在那里成功签出并编译我的 Android 项目 现在我想在 android 模拟器中运行一些 JUnit 测试并添加 Android 模拟器插件 我将 显示模拟器窗口 选项设
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助
  • 悬停此元素时隐藏元素后的伪元素

    我的菜单垂直放置在页面左侧和菜单之间 li 我有一个 after那是一个分隔符 我想要的是当我悬停元素本身 如果它是第一个元素 时隐藏 after 元素 或者当它是中间元素时隐藏上面和底部的元素 如果它是最后一个子元素 则隐藏 after前
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 你的CPU不支持NX

    我刚刚下载了 android studio 但是我遇到了一个问题 当我运行它时 它说你的 cpu 不支持 NX 我应该怎么办 NX 或实际上是 NX 处理器位 是处理器的一项功能 有助于保护您的 PC 免受恶意软件的攻击 当此功能未启用并且
  • 在 SQLite 中搜索时排除 HTML 标签和一些 UNICODE 字符

    更新 4 我已经成功运行了firstchar例如 但现在的问题是使用regex 即使包含头文件 它也无法识别regex操作员 有什么线索可以解决这个问题吗 更新 2 我已经编译了sqlite3我的项目中的库 我现在正在寻找任何人帮助我为我的
  • php - 解析html页面

    div divbox div p para1 p p para2 p p para3 p table class table tr td td tr table p para4 p p para5 p 有人可以告诉我如何解析这个 html
  • 尝试将数据存储在点击器网站中

    我正在尝试存储一个名为的变量score无论何时刷新 您都会一次又一次地使用它 我不明白的是它的代码是什么 我尝试了一些方法 但似乎都不起作用 这是我的答题器网站 但是当我尝试使用 JavaScript 来存储它时 它不起作用window o
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • 在 HTML 下拉列表中有一个滚动条

    我正在寻找一种在 HTML 的下拉列表中添加滚动条的方法 这样如果下拉列表包含的内容超过例如 5 项 将出现滚动条以查看其余项 这是因为我将被迫列出一些大清单 过去几个小时我一直在谷歌上搜索它 但没有运气 它需要适用于 IE8 FF 和 C
  • 如何根据 gradle 风格设置变量

    我想传递一个变量test我为每种风格设置了不同的值作为 NDK 的定义 但出于某种原因 他总是忽略了最后味道的价值 这是 build gradle apply plugin com android library def test andr
  • 一次显示两条Toast消息?

    我希望在一个位置显示一条 Toast 消息 并在另一位置同时显示另一条 Toast 消息 多个 Toast 消息似乎总是按顺序排队和显示 是否可以同时显示两条消息 是否有一种解决方法至少可以提供这种外观并且不涉及扰乱活动布局 Edit 看来

随机推荐

  • 为什么不采用依赖类型呢?

    我看到几个消息来源都赞同 Haskell 正在逐渐成为一种依赖类型的语言 的观点 这似乎意味着 随着越来越多的语言扩展 Haskell 正在朝着这个大方向漂移 但还没有实现 基本上有两件事我想知道 第一个很简单 成为一种依赖类型的语言 实际
  • gst 浏览器无法启动

    我刚刚安装了gst browser VisualGST 通过 Canonical Ubuntu 存储库 因此我尝试通过运行来启动 VisualGSTgst browser在命令行上 但是 我立即收到一个错误 a Smalltalk Stre
  • 如何改进 mongodb 的 XML 导入?

    我有一些大型 XML 文件 每个 5GB 我正在将其导入到 mongodb 数据库中 我使用 Expat 来解析文档 进行一些数据操作 删除一些字段 单位转换等 然后插入数据库 我的脚本基于此 https github com bgianf
  • Firebase“符号链接”到另一个节点

    关于我关于建模真实的面向用户的树结构的另一个问题 使用firebase树结构直接表示 文档大纲 结构 https stackoverflow com questions 39112792 using firebase tree struct
  • 检测耳机 Android

    近年来我在 Android 上编程 我想知道一些事情 如何检测耳机的存在 有一个方法 isWiredHeadsetOn 但它不起作用 我已经尝试过 但它不起作用 AudioManager am AudioManager getSystemS
  • 更改环境值后Innosetup SendMessage

    我使用 InnoSetup 在注册表中设置环境变量 Registry Root HKLM Subkey SYSTEM CurrentControlSet Control Session Manager Environment ValueTy
  • 日期格式错误 java.sql.SQLException:无效的列类型

    我正在使用 JSF 显示日期pattern dd MMM yyyy 当我尝试将日期值插入 更新到我的 Oracle DB 时 我得到 java sql SQLException Invalid column type 因为我插入或更新之前的
  • 在 angular2 控制数组中使用单选按钮

    您好 我有一个由控制组组成的控制数组 以及在模板中循环控制数组以创建单选按钮 我可以选择所有单选按钮 即使它们属于不同的控制组并且具有不同的名称 我在这里做了一个 plunker 演示http plnkr co edit jTMZUCj5J
  • 什么是“盒子模型”?

    在最近一次前端开发人员职位面试中 我被问到盒子模型是什么 我以为面试官指的是测试 即白盒测试 黑盒测试 我错了 就前端开发而言 什么是盒子模型 这是一个很棒的CSS盒子模型教程 http www brainjar com css posit
  • django // 1054,“字段列表”中的未知列“rank.post_id_id””

    Django 2 2 3 玛丽亚数据库 从具有 inspectdb 的现有数据库导入模型并更改字段属性后 会发生此错误 class Post models Model post id models AutoField primary key
  • 申请因缺乏 IPv6 支持而被拒绝 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 My last release of application which is 12 8 is rejected by apple saying
  • Apache Geode Web 框架

    我们使用VS并集成了以下Web框架 https visualstudio microsoft com vs features web frameworks https visualstudio microsoft com vs featur
  • 带键值的数组长度,js

    我编写了这段代码 它应该解析给定的 paramUnparsed 它应该是以下形式的数组 key1 val1 key2 val2 keyn valn function parseParams paramUnparsed var params
  • 将 ListView 项目的 id 传递给 ActionMode.Callback 对象

    所以我现在的问题是 现在我长时间单击 ListView 中的一个项目 它会弹出一个上下文操作栏 传递到 onItemLongClick 的 id 是我想在 mActionModeCallback 的 on ActionItemClicked
  • ClearCase 适合我们的开发流程吗?

    那么 让我描述一下我们目前的情况 我们是一个由经验丰富的 Java 开发人员组成的小团队 6 人 迷失在一个主要由 SAP 和 Siebel 配置器组成的大型 IS 团队中 虽然所有其他团队目前都在使用 VSS 主要作为存储系统 但我们的团
  • 确定 R 中加载的对象的名称

    想象你有一个物体foo你另存为saved file rda如下 foo lt a save foo file saved file rda 假设你加载saved file rda进入具有多个对象的环境 但忘记了其中对象的名称saved fi
  • Sqlalchemy 与 postgres。尝试使用“DISTINCT ON”而不是“DISTINCT”

    我需要生成这样的查询 SELECT DISTINCT ON article code article code article title 首先 我尝试通过 ORM 不同的方法来制作它 并向它发送一个包含字段的列表 但这是行不通的 其次 我
  • 在为 ARM7 编译的 C 代码中,使用全局变量会提高还是降低性能?

    当为 ARM7 嵌入式平台进行编译时 在 C 代码中使用大量全局变量是否会降低或提高性能 代码库由多个 C 源代码文件组成 这些文件使用 extern 关键字引用彼此的全局变量 不同源代码文件中的不同函数引用不同的全局变量 有些变量是数组
  • 如何将 NSDate 转换为相对格式,如“今天”、“昨天”、“一周前”、“一个月前”、“一年前”?

    我想将 nsdate 转换为相对格式 例如 Today Yesterday a week ago a month ago a year ago date as it is 我已经为它编写了以下方法 但是它只是打印日期 你能告诉我应该是什么问
  • 存储WebView以供离线浏览

    页面加载后强制 Android 将 webview 存储到媒体的最佳方法是什么 更多细节 每个页面都将包含丰富的图像 脚本和样式 每页大约为 0 5 到 1 MB 一旦调用 OnFinishedLoading Override 它们就会被保