Cordova angular app将数据保存到设备

时间:2017-06-09 08:25:45

标签: angular cordova breeze

我的应用程序是一个使用cordova构建的Angular SPA,可在Android设备上运行。对于数据访问和缓存,我使用BreezeJS。这一切都悬而未决。

问题是将数据保存到设备,以便在用户关闭应用程序时,他们可以在离开时以相同的状态再次打开它。这涉及将数据从breeze缓存保存到设备并恢复它。

我挂上"暂停"用于检测应用程序何时关闭然后将数据保存到设备的事件。只要应用程序进入后台,就会发生这种情况。

document.addEventListener("pause", quitCordova, false);

问题是,如果用户最小化然后关闭,但立即打开应用程序(重复几次),那么我认为恢复发生在尚未完全保存但破坏数据的文件上。

在再次阅读文件之前,您似乎无法延迟确保保存已完成。

下面是如何保存数据:

var fs = CordovaPromiseFS({
                persistent: true, // or false
                storageSize: 90857600,
              });

fs.write(myKey, myData).then(successFunction).catch(failureFunction);

CordovaPromiseFS是文件系统的包装器,详情请https://github.com/markmarijnissen/cordova-promise-fs

0 个答案:

没有答案