cordova如何显示初始本地版本的可缓存内容,如果离线?

时间:2014-04-01 03:02:21

标签: cordova

方案 使用Cordova(3.4)/ jquerymobile应用程序,想要使用appcache检查是否有与app相关的帮助信息的新内容,这些内容将通过导航从index.html显示到help.html然后可以离线使用。意图是使用app。

发送help.html的初始副本

index.html有帮助按钮点击事件:     location.href =" http://ourdomain.com/something/help.html&#34 ;;

help.html(应用随附的本地副本和网络版)     

清单文件只列出了帮助文件,因为我们不打算更新index.html

什么行不通: 如果第一次执行应用程序,并且设备处于脱机状态,导航到帮助页面会导致网页不可用"。那里没有真正的惊喜。

什么有效: 如果应用程序在首次启动时确实具有网络连接,则在导航到帮助屏幕时会缓存帮助信息,并随后可以脱机使用。网络服务器上的新更新会反映在应用程序中。

问题: 如果应用程序处于脱机状态,是否有办法检查appcache是​​否尚未填充所需的帮助URL?然后,如果没有URL的appcache,我们要么: 1)使用本地帮助文件的内容预填充缓存,或 2)只显示本地文件?

TA

1 个答案:

答案 0 :(得分:1)

我不确定这是否有用,但你可以添加一个事件监听器来检查设备何时离线:

document.addEventListener("deviceready", onDeviceReady, false);
document.addEventListener("online", onOnline, false);
document.addEventListener("offline", onOffline, false);

您还可以检查该appache是​​否与window.applicationCache.status

一起使用

如果返回0,则不缓存页面。如果为1,则表示应用程序正在从缓存的资产中运行最新版本。