如何在Cordova应用程序中缓存客户端上上次加载的数据



我正在Meteor上构建一个应用程序,并一直在我的Android设备上测试我的应用程序。它非常有效。我在服务器上发布我的数据,并在客户端订阅它。

但当我没有数据或服务器关闭时,移动应用程序不会显示任何内容。这是有道理的,因为它无法加载任何内容。但必须能够缓存服务器上最后加载的数据,这样在没有连接的情况下,至少可以在移动应用程序中显示一些内容。

我研究了appcache,但它似乎是针对资产的,而不是数据库内容。有人知道如何让Meteor应用程序的Cordova版本在本地缓存数据库,这样它也可以离线工作吗?

为了缓存我们的iPad应用程序配置,我们使用localStorage。它非常容易使用,而且使用起来非常好。

localStorage.settings = settings; // data from server

当应用程序启动时:

var settings = null;
if( navigator.network.connection.type === Connection.NONE ) {
   settings = localStorage.settings
} else {
   // fetch settings from server
}

我们已经运行了一年多,没有出现任何问题。

最新更新