【发布时间】:2018-06-23 19:22:48
【问题描述】:
背景:
-
在安卓网页视图中:
- 本地保存的 HTML 文件。
-
当用户在线时
- URL 被调用,
Page A从网站加载。 - 某些数据存储在
localStorage('X')onPage A。
- URL 被调用,
-
当用户离线时
- 显示 HTML
Page B(本地保存)。 -
Page B从localStorage('X')获取数据并存储在localStorage('Y')中。 -
Page B在 JavaScript 中对localStorage('Y')执行操作。
- 显示 HTML
-
当用户再次在线时
- 页面A从
localStorage('Y')获取数据并存储在localStorage('X')中。
- 页面A从
问题
localStorage('X') 值不会传递给localStorage('Y'),反之亦然。
正在寻找:
将localStorage 值从网站传递到本地 HTML 文件的方法以及反之亦然
【问题讨论】:
-
localStorage 要求两个页面位于同一个域中。如果不是这种情况,您将无法在他们之间共享数据。
-
@NisargShah 如何将此值从一个域传递到另一个域?
-
解决方法之一是在本地存储的页面和 PostMessage API 中使用 IFrame。让我看看是否有解释它的答案,或者我会发布一个答案。
-
@NisargShah 你能详细介绍一下 PostMessage API 吗?如果您提供工作示例,那将是很大的帮助
-
不幸的是,我对 WebView 没有任何经验,但原则上,我的答案中的解决方案应该可以正常工作。尝试先浏览与 postMessage 相关的链接。它应该足够简单。
标签: javascript android html webview